ITP001 Axioms: ITP068^7.ax


%------------------------------------------------------------------------------
% File     : ITP068^7 : TPTP v8.2.0. Bugfixed v7.5.0.
% Domain   : Interactive Theorem Proving
% Axioms   : HOL4 syntactic export, chainy mode
% Version  : [BG+19] axioms.
% English  :

% Refs     : [BG+19] Brown et al. (2019), GRUNGE: A Grand Unified ATP Chall
%          : [Gau19] Gauthier (2019), Email to Geoff Sutcliffe
% Source   : [BG+19]
% Names    : path.ax [Gau19]
%          : HL4068^7.ax [TPAP]

% Status   : Satisfiable
% Syntax   : Number of formulae    :  255 (  43 unt;  98 typ;   0 def)
%            Number of atoms       :  470 ( 188 equ;  16 cnn)
%            Maximal formula atoms :   12 (   1 avg)
%            Number of connectives : 4043 (  16   ~;  11   |; 118   &;3772   @)
%                                         (  47 <=>;  79  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   24 (  10 avg;3772 nst)
%            Number of types       :    3 (   2 usr)
%            Number of type conns  :  381 ( 381   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :   98 (  96 usr;   5 con; 0-10 aty)
%            Number of variables   : 1039 (  27   ^ 839   !;  41   ?;1039   :)
%                                         ( 132  !>;   0  ?*;   0  @-;   0  @+)
% SPC      : TH1_SAT_EQU_NAR

% Comments :
% Bugfixes : v7.5.0 - Fixes to the axioms.
%------------------------------------------------------------------------------
thf(tyop_2Elist_2Elist,type,
    tyop_2Elist_2Elist: $tType > $tType ).

thf(tyop_2Ellist_2Ellist,type,
    tyop_2Ellist_2Ellist: $tType > $tType ).

thf(tyop_2Emin_2Ebool,type,
    tyop_2Emin_2Ebool: $tType ).

thf(tyop_2Emin_2Efun,type,
    tyop_2Emin_2Efun: $tType > $tType > $tType ).

thf(tyop_2Enum_2Enum,type,
    tyop_2Enum_2Enum: $tType ).

thf(tyop_2Eoption_2Eoption,type,
    tyop_2Eoption_2Eoption: $tType > $tType ).

thf(tyop_2Epair_2Eprod,type,
    tyop_2Epair_2Eprod: $tType > $tType > $tType ).

thf(tyop_2Epath_2Epath,type,
    tyop_2Epath_2Epath: $tType > $tType > $tType ).

thf(c_2Ebool_2E_21,type,
    c_2Ebool_2E_21: 
      !>[A_27a: $tType] : ( ( A_27a > $o ) > $o ) ).

thf(c_2Epair_2E_23_23,type,
    c_2Epair_2E_23_23: 
      !>[A_27a: $tType,A_27b: $tType,A_27c: $tType,A_27d: $tType] : ( ( A_27a > A_27c ) > ( A_27b > A_27d ) > ( tyop_2Epair_2Eprod @ A_27a @ A_27b ) > ( tyop_2Epair_2Eprod @ A_27c @ A_27d ) ) ).

thf(c_2Earithmetic_2E_2B,type,
    c_2Earithmetic_2E_2B: tyop_2Enum_2Enum > tyop_2Enum_2Enum > tyop_2Enum_2Enum ).

thf(c_2Epair_2E_2C,type,
    c_2Epair_2E_2C: 
      !>[A_27a: $tType,A_27b: $tType] : ( A_27a > A_27b > ( tyop_2Epair_2Eprod @ A_27a @ A_27b ) ) ).

thf(c_2Earithmetic_2E_2D,type,
    c_2Earithmetic_2E_2D: tyop_2Enum_2Enum > tyop_2Enum_2Enum > tyop_2Enum_2Enum ).

thf(c_2Ebool_2E_2F_5C,type,
    c_2Ebool_2E_2F_5C: $o > $o > $o ).

thf(c_2Enum_2E0,type,
    c_2Enum_2E0: tyop_2Enum_2Enum ).

thf(c_2Eprim__rec_2E_3C,type,
    c_2Eprim__rec_2E_3C: tyop_2Enum_2Enum > tyop_2Enum_2Enum > $o ).

thf(c_2Earithmetic_2E_3C_3D,type,
    c_2Earithmetic_2E_3C_3D: tyop_2Enum_2Enum > tyop_2Enum_2Enum > $o ).

thf(c_2Emin_2E_3D,type,
    c_2Emin_2E_3D: 
      !>[A_27a: $tType] : ( A_27a > A_27a > $o ) ).

thf(c_2Emin_2E_3D_3D_3E,type,
    c_2Emin_2E_3D_3D_3E: $o > $o > $o ).

thf(c_2Ebool_2E_3F,type,
    c_2Ebool_2E_3F: 
      !>[A_27a: $tType] : ( ( A_27a > $o ) > $o ) ).

thf(c_2Elist_2EAPPEND,type,
    c_2Elist_2EAPPEND: 
      !>[A_27a: $tType] : ( ( tyop_2Elist_2Elist @ A_27a ) > ( tyop_2Elist_2Elist @ A_27a ) > ( tyop_2Elist_2Elist @ A_27a ) ) ).

thf(c_2Earithmetic_2EBIT1,type,
    c_2Earithmetic_2EBIT1: tyop_2Enum_2Enum > tyop_2Enum_2Enum ).

thf(c_2Earithmetic_2EBIT2,type,
    c_2Earithmetic_2EBIT2: tyop_2Enum_2Enum > tyop_2Enum_2Enum ).

thf(c_2Ebool_2ECOND,type,
    c_2Ebool_2ECOND: 
      !>[A_27a: $tType] : ( $o > A_27a > A_27a > A_27a ) ).

thf(c_2Elist_2ECONS,type,
    c_2Elist_2ECONS: 
      !>[A_27a: $tType] : ( A_27a > ( tyop_2Elist_2Elist @ A_27a ) > ( tyop_2Elist_2Elist @ A_27a ) ) ).

thf(c_2Elist_2EEL,type,
    c_2Elist_2EEL: 
      !>[A_27a: $tType] : ( tyop_2Enum_2Enum > ( tyop_2Elist_2Elist @ A_27a ) > A_27a ) ).

thf(c_2Epred__set_2EEMPTY,type,
    c_2Epred__set_2EEMPTY: 
      !>[A_27a: $tType] : ( A_27a > $o ) ).

thf(c_2Ebool_2EF,type,
    c_2Ebool_2EF: $o ).

thf(c_2Epair_2EFST,type,
    c_2Epair_2EFST: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( tyop_2Epair_2Eprod @ A_27a @ A_27b ) > A_27a ) ).

thf(c_2Epred__set_2EGSPEC,type,
    c_2Epred__set_2EGSPEC: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( A_27b > ( tyop_2Epair_2Eprod @ A_27a @ $o ) ) > A_27a > $o ) ).

thf(c_2Epred__set_2EIMAGE,type,
    c_2Epred__set_2EIMAGE: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( A_27a > A_27b ) > ( A_27a > $o ) > A_27b > $o ) ).

thf(c_2Ebool_2EIN,type,
    c_2Ebool_2EIN: 
      !>[A_27a: $tType] : ( A_27a > ( A_27a > $o ) > $o ) ).

thf(c_2Epred__set_2EINSERT,type,
    c_2Epred__set_2EINSERT: 
      !>[A_27a: $tType] : ( A_27a > ( A_27a > $o ) > A_27a > $o ) ).

thf(c_2Ellist_2ELAPPEND,type,
    c_2Ellist_2ELAPPEND: 
      !>[A_27a: $tType] : ( ( tyop_2Ellist_2Ellist @ A_27a ) > ( tyop_2Ellist_2Ellist @ A_27a ) > ( tyop_2Ellist_2Ellist @ A_27a ) ) ).

thf(c_2Ellist_2ELCONS,type,
    c_2Ellist_2ELCONS: 
      !>[A_27a: $tType] : ( A_27a > ( tyop_2Ellist_2Ellist @ A_27a ) > ( tyop_2Ellist_2Ellist @ A_27a ) ) ).

thf(c_2Elist_2ELENGTH,type,
    c_2Elist_2ELENGTH: 
      !>[A_27a: $tType] : ( ( tyop_2Elist_2Elist @ A_27a ) > tyop_2Enum_2Enum ) ).

thf(c_2Ellist_2ELFINITE,type,
    c_2Ellist_2ELFINITE: 
      !>[A_27a: $tType] : ( ( tyop_2Ellist_2Ellist @ A_27a ) > $o ) ).

thf(c_2Ellist_2ELMAP,type,
    c_2Ellist_2ELMAP: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( A_27a > A_27b ) > ( tyop_2Ellist_2Ellist @ A_27a ) > ( tyop_2Ellist_2Ellist @ A_27b ) ) ).

thf(c_2Ellist_2ELNIL,type,
    c_2Ellist_2ELNIL: 
      !>[A_27a: $tType] : ( tyop_2Ellist_2Ellist @ A_27a ) ).

thf(c_2Ellist_2ELNTH,type,
    c_2Ellist_2ELNTH: 
      !>[A_27a: $tType] : ( tyop_2Enum_2Enum > ( tyop_2Ellist_2Ellist @ A_27a ) > ( tyop_2Eoption_2Eoption @ A_27a ) ) ).

thf(c_2Ellist_2ELTAKE,type,
    c_2Ellist_2ELTAKE: 
      !>[A_27a: $tType] : ( tyop_2Enum_2Enum > ( tyop_2Ellist_2Ellist @ A_27a ) > ( tyop_2Eoption_2Eoption @ ( tyop_2Elist_2Elist @ A_27a ) ) ) ).

thf(c_2Ellist_2ELUNFOLD,type,
    c_2Ellist_2ELUNFOLD: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( A_27b > ( tyop_2Eoption_2Eoption @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) ) ) > A_27b > ( tyop_2Ellist_2Ellist @ A_27a ) ) ).

thf(c_2Elist_2ENIL,type,
    c_2Elist_2ENIL: 
      !>[A_27a: $tType] : ( tyop_2Elist_2Elist @ A_27a ) ).

thf(c_2Eoption_2ENONE,type,
    c_2Eoption_2ENONE: 
      !>[A_27a: $tType] : ( tyop_2Eoption_2Eoption @ A_27a ) ).

thf(c_2Earithmetic_2ENUMERAL,type,
    c_2Earithmetic_2ENUMERAL: tyop_2Enum_2Enum > tyop_2Enum_2Enum ).

thf(c_2Eoption_2EOPTION__MAP,type,
    c_2Eoption_2EOPTION__MAP: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( A_27a > A_27b ) > ( tyop_2Eoption_2Eoption @ A_27a ) > ( tyop_2Eoption_2Eoption @ A_27b ) ) ).

thf(c_2Epath_2EPL,type,
    c_2Epath_2EPL: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > tyop_2Enum_2Enum > $o ) ).

thf(c_2Epath_2ESN,type,
    c_2Epath_2ESN: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( A_27a > A_27b > A_27a > $o ) > $o ) ).

thf(c_2Epair_2ESND,type,
    c_2Epair_2ESND: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( tyop_2Epair_2Eprod @ A_27a @ A_27b ) > A_27b ) ).

thf(c_2Eoption_2ESOME,type,
    c_2Eoption_2ESOME: 
      !>[A_27a: $tType] : ( A_27a > ( tyop_2Eoption_2Eoption @ A_27a ) ) ).

thf(c_2Enum_2ESUC,type,
    c_2Enum_2ESUC: tyop_2Enum_2Enum > tyop_2Enum_2Enum ).

thf(c_2Ebool_2ET,type,
    c_2Ebool_2ET: $o ).

thf(c_2Eoption_2ETHE,type,
    c_2Eoption_2ETHE: 
      !>[A_27a: $tType] : ( ( tyop_2Eoption_2Eoption @ A_27a ) > A_27a ) ).

thf(c_2Ebool_2ETYPE__DEFINITION,type,
    c_2Ebool_2ETYPE__DEFINITION: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( A_27a > $o ) > ( A_27b > A_27a ) > $o ) ).

thf(c_2Epair_2EUNCURRY,type,
    c_2Epair_2EUNCURRY: 
      !>[A_27a: $tType,A_27b: $tType,A_27c: $tType] : ( ( A_27a > A_27b > A_27c ) > ( tyop_2Epair_2Eprod @ A_27a @ A_27b ) > A_27c ) ).

thf(c_2Epred__set_2EUNION,type,
    c_2Epred__set_2EUNION: 
      !>[A_27a: $tType] : ( ( A_27a > $o ) > ( A_27a > $o ) > A_27a > $o ) ).

thf(c_2Epred__set_2EUNIV,type,
    c_2Epred__set_2EUNIV: 
      !>[A_27a: $tType] : ( A_27a > $o ) ).

thf(c_2Erelation_2EWF,type,
    c_2Erelation_2EWF: 
      !>[A_27a: $tType] : ( ( A_27a > A_27a > $o ) > $o ) ).

thf(c_2Earithmetic_2EZERO,type,
    c_2Earithmetic_2EZERO: tyop_2Enum_2Enum ).

thf(c_2Ebool_2E_5C_2F,type,
    c_2Ebool_2E_5C_2F: $o > $o > $o ).

thf(c_2Epath_2Edrop,type,
    c_2Epath_2Edrop: 
      !>[A_27a: $tType,A_27b: $tType] : ( tyop_2Enum_2Enum > ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > ( tyop_2Epath_2Epath @ A_27a @ A_27b ) ) ).

thf(c_2Epath_2Eel,type,
    c_2Epath_2Eel: 
      !>[A_27a: $tType,A_27b: $tType] : ( tyop_2Enum_2Enum > ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > A_27a ) ).

thf(c_2Epath_2Eevery,type,
    c_2Epath_2Eevery: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( A_27a > $o ) > ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > $o ) ).

thf(c_2Epath_2Eexists,type,
    c_2Epath_2Eexists: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( A_27a > $o ) > ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > $o ) ).

thf(c_2Epath_2Efilter,type,
    c_2Epath_2Efilter: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( A_27a > $o ) > ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > ( tyop_2Epath_2Epath @ A_27a @ A_27b ) ) ).

thf(c_2Epath_2Efinite,type,
    c_2Epath_2Efinite: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > $o ) ).

thf(c_2Epath_2Efirst,type,
    c_2Epath_2Efirst: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > A_27a ) ).

thf(c_2Epath_2EfirstP__at,type,
    c_2Epath_2EfirstP__at: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( A_27a > $o ) > ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > tyop_2Enum_2Enum > $o ) ).

thf(c_2Epath_2Efirst__label,type,
    c_2Epath_2Efirst__label: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > A_27b ) ).

thf(c_2Epath_2EfromPath,type,
    c_2Epath_2EfromPath: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > ( tyop_2Epair_2Eprod @ A_27a @ ( tyop_2Ellist_2Ellist @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) ) ) ) ).

thf(c_2EfixedPoint_2Egfp,type,
    c_2EfixedPoint_2Egfp: 
      !>[A_27a: $tType] : ( ( ( A_27a > $o ) > A_27a > $o ) > A_27a > $o ) ).

thf(c_2Epath_2Eis__stopped,type,
    c_2Epath_2Eis__stopped: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > $o ) ).

thf(c_2Epath_2Elabels,type,
    c_2Epath_2Elabels: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > ( tyop_2Ellist_2Ellist @ A_27b ) ) ).

thf(c_2Epath_2Elast,type,
    c_2Epath_2Elast: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > A_27a ) ).

thf(c_2Epath_2Elength,type,
    c_2Epath_2Elength: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > ( tyop_2Eoption_2Eoption @ tyop_2Enum_2Enum ) ) ).

thf(c_2Epath_2Emem,type,
    c_2Epath_2Emem: 
      !>[A_27a: $tType,A_27b: $tType] : ( A_27a > ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > $o ) ).

thf(c_2EfixedPoint_2Emonotone,type,
    c_2EfixedPoint_2Emonotone: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( ( A_27a > $o ) > A_27b > $o ) > $o ) ).

thf(c_2Epath_2Enth__label,type,
    c_2Epath_2Enth__label: 
      !>[A_27a: $tType,A_27b: $tType] : ( tyop_2Enum_2Enum > ( tyop_2Epath_2Epath @ A_27b @ A_27a ) > A_27a ) ).

thf(c_2Ecombin_2Eo,type,
    c_2Ecombin_2Eo: 
      !>[A_27a: $tType,A_27b: $tType,A_27c: $tType] : ( ( A_27c > A_27b ) > ( A_27a > A_27c ) > A_27a > A_27b ) ).

thf(c_2Epath_2Eokpath,type,
    c_2Epath_2Eokpath: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( A_27a > A_27b > A_27a > $o ) > ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > $o ) ).

thf(c_2Epath_2Eokpath__f,type,
    c_2Epath_2Eokpath__f: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( A_27a > A_27b > A_27a > $o ) > ( ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > $o ) > ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > $o ) ).

thf(c_2Eoption_2Eoption__CASE,type,
    c_2Eoption_2Eoption__CASE: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( tyop_2Eoption_2Eoption @ A_27a ) > A_27b > ( A_27a > A_27b ) > A_27b ) ).

thf(c_2Epair_2Epair__CASE,type,
    c_2Epair_2Epair__CASE: 
      !>[A_27a: $tType,A_27b: $tType,A_27c: $tType] : ( ( tyop_2Epair_2Eprod @ A_27b @ A_27c ) > ( A_27b > A_27c > A_27a ) > A_27a ) ).

thf(c_2Epath_2Eparallel__comp,type,
    c_2Epath_2Eparallel__comp: 
      !>[A_27a: $tType,A_27b: $tType,A_27c: $tType,A_27d: $tType,A_27e: $tType] : ( ( A_27a > A_27b > A_27c > $o ) > ( A_27d > A_27b > A_27e > $o ) > ( tyop_2Epair_2Eprod @ A_27a @ A_27d ) > A_27b > ( tyop_2Epair_2Eprod @ A_27c @ A_27e ) > $o ) ).

thf(c_2Epath_2Epconcat,type,
    c_2Epath_2Epconcat: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > A_27b > ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > ( tyop_2Epath_2Epath @ A_27a @ A_27b ) ) ).

thf(c_2Epath_2Epcons,type,
    c_2Epath_2Epcons: 
      !>[A_27a: $tType,A_27b: $tType] : ( A_27a > A_27b > ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > ( tyop_2Epath_2Epath @ A_27a @ A_27b ) ) ).

thf(c_2Epath_2Epgenerate,type,
    c_2Epath_2Epgenerate: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( tyop_2Enum_2Enum > A_27a ) > ( tyop_2Enum_2Enum > A_27b ) > ( tyop_2Epath_2Epath @ A_27a @ A_27b ) ) ).

thf(c_2Epath_2Eplink,type,
    c_2Epath_2Eplink: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > ( tyop_2Epath_2Epath @ A_27a @ A_27b ) ) ).

thf(c_2Epath_2Epmap,type,
    c_2Epath_2Epmap: 
      !>[A_27a: $tType,A_27b: $tType,A_27c: $tType,A_27d: $tType] : ( ( A_27a > A_27c ) > ( A_27b > A_27d ) > ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > ( tyop_2Epath_2Epath @ A_27c @ A_27d ) ) ).

thf(c_2Epath_2Eseg,type,
    c_2Epath_2Eseg: 
      !>[A_27a: $tType,A_27b: $tType] : ( tyop_2Enum_2Enum > tyop_2Enum_2Enum > ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > ( tyop_2Epath_2Epath @ A_27a @ A_27b ) ) ).

thf(c_2Epath_2Estopped__at,type,
    c_2Epath_2Estopped__at: 
      !>[A_27a: $tType,A_27b: $tType] : ( A_27a > ( tyop_2Epath_2Epath @ A_27a @ A_27b ) ) ).

thf(c_2Epath_2Etail,type,
    c_2Epath_2Etail: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > ( tyop_2Epath_2Epath @ A_27a @ A_27b ) ) ).

thf(c_2Epath_2Etake,type,
    c_2Epath_2Etake: 
      !>[A_27a: $tType,A_27b: $tType] : ( tyop_2Enum_2Enum > ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > ( tyop_2Epath_2Epath @ A_27a @ A_27b ) ) ).

thf(c_2Ellist_2EtoList,type,
    c_2Ellist_2EtoList: 
      !>[A_27a: $tType] : ( ( tyop_2Ellist_2Ellist @ A_27a ) > ( tyop_2Eoption_2Eoption @ ( tyop_2Elist_2Elist @ A_27a ) ) ) ).

thf(c_2Epath_2EtoPath,type,
    c_2Epath_2EtoPath: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( tyop_2Epair_2Eprod @ A_27a @ ( tyop_2Ellist_2Ellist @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) ) ) > ( tyop_2Epath_2Epath @ A_27a @ A_27b ) ) ).

thf(c_2Epath_2Etrace__machine,type,
    c_2Epath_2Etrace__machine: 
      !>[A_27a: $tType] : ( ( ( tyop_2Elist_2Elist @ A_27a ) > $o ) > ( tyop_2Elist_2Elist @ A_27a ) > A_27a > ( tyop_2Elist_2Elist @ A_27a ) > $o ) ).

thf(c_2Epath_2Eunfold,type,
    c_2Epath_2Eunfold: 
      !>[A_27a: $tType,A_27b: $tType,A_27c: $tType] : ( ( A_27c > A_27a ) > ( A_27c > ( tyop_2Eoption_2Eoption @ ( tyop_2Epair_2Eprod @ A_27c @ A_27b ) ) ) > A_27c > ( tyop_2Epath_2Epath @ A_27a @ A_27b ) ) ).

thf(c_2Ebool_2E_7E,type,
    c_2Ebool_2E_7E: $o > $o ).

thf(logicdef_2E_2F_5C,axiom,
    ! [V0: $o,V1: $o] :
      ( ( c_2Ebool_2E_2F_5C @ V0 @ V1 )
    <=> ( V0
        & V1 ) ) ).

thf(logicdef_2E_5C_2F,axiom,
    ! [V0: $o,V1: $o] :
      ( ( c_2Ebool_2E_5C_2F @ V0 @ V1 )
    <=> ( V0
        | V1 ) ) ).

thf(logicdef_2E_7E,axiom,
    ! [V0: $o] :
      ( ( c_2Ebool_2E_7E @ V0 )
    <=> ( (~) @ V0 ) ) ).

thf(logicdef_2E_3D_3D_3E,axiom,
    ! [V0: $o,V1: $o] :
      ( ( c_2Emin_2E_3D_3D_3E @ V0 @ V1 )
    <=> ( V0
       => V1 ) ) ).

thf(logicdef_2E_3D,axiom,
    ! [A_27a: $tType,V0: A_27a,V1: A_27a] :
      ( ( c_2Emin_2E_3D @ A_27a @ V0 @ V1 )
    <=> ( V0 = V1 ) ) ).

thf(quantdef_2E_21,axiom,
    ! [A_27a: $tType,V0f: A_27a > $o] :
      ( ( c_2Ebool_2E_21 @ A_27a @ V0f )
    <=> ! [V1x: A_27a] : ( V0f @ V1x ) ) ).

thf(quantdef_2E_3F,axiom,
    ! [A_27a: $tType,V0f: A_27a > $o] :
      ( ( c_2Ebool_2E_3F @ A_27a @ V0f )
    <=> ? [V1x: A_27a] : ( V0f @ V1x ) ) ).

thf(thm_2Epath_2Epath__TY__DEF,axiom,
    ! [A_27a: $tType,A_27b: $tType] :
    ? [V0rep: ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > ( tyop_2Epair_2Eprod @ A_27a @ ( tyop_2Ellist_2Ellist @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) ) )] :
      ( c_2Ebool_2ETYPE__DEFINITION @ ( tyop_2Epair_2Eprod @ A_27a @ ( tyop_2Ellist_2Ellist @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) ) ) @ ( tyop_2Epath_2Epath @ A_27a @ A_27b )
      @ ^ [V1x: tyop_2Epair_2Eprod @ A_27a @ ( tyop_2Ellist_2Ellist @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) )] : c_2Ebool_2ET
      @ V0rep ) ).

thf(thm_2Epath_2Epath__absrep__bijections,axiom,
    ! [A_27a: $tType,A_27b: $tType] :
      ( ! [V0a: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( c_2Epath_2EtoPath @ A_27a @ A_27b @ ( c_2Epath_2EfromPath @ A_27a @ A_27b @ V0a ) )
          = V0a )
      & ! [V1r: tyop_2Epair_2Eprod @ A_27a @ ( tyop_2Ellist_2Ellist @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) )] :
          ( ( ^ [V2x: tyop_2Epair_2Eprod @ A_27a @ ( tyop_2Ellist_2Ellist @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) )] : c_2Ebool_2ET
            @ V1r )
        <=> ( ( c_2Epath_2EfromPath @ A_27a @ A_27b @ ( c_2Epath_2EtoPath @ A_27a @ A_27b @ V1r ) )
            = V1r ) ) ) ).

thf(thm_2Epath_2Efirst__def,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Epath_2Efirst @ A_27a @ A_27b @ V0p )
      = ( c_2Epair_2EFST @ A_27a @ ( tyop_2Ellist_2Ellist @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) ) @ ( c_2Epath_2EfromPath @ A_27a @ A_27b @ V0p ) ) ) ).

thf(thm_2Epath_2Estopped__at__def,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0x: A_27a] :
      ( ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V0x )
      = ( c_2Epath_2EtoPath @ A_27a @ A_27b @ ( c_2Epair_2E_2C @ A_27a @ ( tyop_2Ellist_2Ellist @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) ) @ V0x @ ( c_2Ellist_2ELNIL @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) ) ) ) ) ).

thf(thm_2Epath_2Epcons__def,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0x: A_27a,V1r: A_27b,V2p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Epath_2Epcons @ A_27a @ A_27b @ V0x @ V1r @ V2p )
      = ( c_2Epath_2EtoPath @ A_27a @ A_27b @ ( c_2Epair_2E_2C @ A_27a @ ( tyop_2Ellist_2Ellist @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) ) @ V0x @ ( c_2Ellist_2ELCONS @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) @ ( c_2Epair_2E_2C @ A_27b @ A_27a @ V1r @ ( c_2Epath_2Efirst @ A_27a @ A_27b @ V2p ) ) @ ( c_2Epair_2ESND @ A_27a @ ( tyop_2Ellist_2Ellist @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) ) @ ( c_2Epath_2EfromPath @ A_27a @ A_27b @ V2p ) ) ) ) ) ) ).

thf(thm_2Epath_2Efinite__def,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0sigma: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Epath_2Efinite @ A_27a @ A_27b @ V0sigma )
      = ( c_2Ellist_2ELFINITE @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) @ ( c_2Epair_2ESND @ A_27a @ ( tyop_2Ellist_2Ellist @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) ) @ ( c_2Epath_2EfromPath @ A_27a @ A_27b @ V0sigma ) ) ) ) ).

thf(thm_2Epath_2Elast__thm,axiom,
    ! [A_27a: $tType,A_27b: $tType] :
      ( ! [V0x: A_27a] :
          ( ( c_2Epath_2Elast @ A_27a @ A_27b @ ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V0x ) )
          = V0x )
      & ! [V1x: A_27a,V2r: A_27b,V3p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( c_2Epath_2Elast @ A_27a @ A_27b @ ( c_2Epath_2Epcons @ A_27a @ A_27b @ V1x @ V2r @ V3p ) )
          = ( c_2Epath_2Elast @ A_27a @ A_27b @ V3p ) ) ) ).

thf(thm_2Epath_2Epmap__def,axiom,
    ! [A_27a: $tType,A_27b: $tType,A_27c: $tType,A_27d: $tType,V0f: A_27a > A_27c,V1g: A_27b > A_27d,V2p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Epath_2Epmap @ A_27a @ A_27b @ A_27c @ A_27d @ V0f @ V1g @ V2p )
      = ( c_2Epath_2EtoPath @ A_27c @ A_27d @ ( c_2Epair_2E_23_23 @ A_27a @ ( tyop_2Ellist_2Ellist @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) ) @ A_27c @ ( tyop_2Ellist_2Ellist @ ( tyop_2Epair_2Eprod @ A_27d @ A_27c ) ) @ V0f @ ( c_2Ellist_2ELMAP @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) @ ( tyop_2Epair_2Eprod @ A_27d @ A_27c ) @ ( c_2Epair_2E_23_23 @ A_27b @ A_27a @ A_27d @ A_27c @ V1g @ V0f ) ) @ ( c_2Epath_2EfromPath @ A_27a @ A_27b @ V2p ) ) ) ) ).

thf(thm_2Epath_2Etail__def,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0x: A_27a,V1r: A_27b,V2p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Epath_2Etail @ A_27a @ A_27b @ ( c_2Epath_2Epcons @ A_27a @ A_27b @ V0x @ V1r @ V2p ) )
      = V2p ) ).

thf(thm_2Epath_2Efirst__label__def,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0x: A_27a,V1r: A_27b,V2p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Epath_2Efirst__label @ A_27a @ A_27b @ ( c_2Epath_2Epcons @ A_27a @ A_27b @ V0x @ V1r @ V2p ) )
      = V1r ) ).

thf(thm_2Epath_2Elength__def,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Epath_2Elength @ A_27a @ A_27b @ V0p )
      = ( c_2Ebool_2ECOND @ ( tyop_2Eoption_2Eoption @ tyop_2Enum_2Enum ) @ ( c_2Epath_2Efinite @ A_27a @ A_27b @ V0p ) @ ( c_2Eoption_2ESOME @ tyop_2Enum_2Enum @ ( c_2Earithmetic_2E_2B @ ( c_2Elist_2ELENGTH @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) @ ( c_2Eoption_2ETHE @ ( tyop_2Elist_2Elist @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) ) @ ( c_2Ellist_2EtoList @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) @ ( c_2Epair_2ESND @ A_27a @ ( tyop_2Ellist_2Ellist @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) ) @ ( c_2Epath_2EfromPath @ A_27a @ A_27b @ V0p ) ) ) ) ) @ ( c_2Earithmetic_2ENUMERAL @ ( c_2Earithmetic_2EBIT1 @ c_2Earithmetic_2EZERO ) ) ) ) @ ( c_2Eoption_2ENONE @ tyop_2Enum_2Enum ) ) ) ).

thf(thm_2Epath_2Eel__def,axiom,
    ! [A_27a: $tType,A_27b: $tType] :
      ( ! [V0p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( c_2Epath_2Eel @ A_27a @ A_27b @ c_2Enum_2E0 @ V0p )
          = ( c_2Epath_2Efirst @ A_27a @ A_27b @ V0p ) )
      & ! [V1n: tyop_2Enum_2Enum,V2p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( c_2Epath_2Eel @ A_27a @ A_27b @ ( c_2Enum_2ESUC @ V1n ) @ V2p )
          = ( c_2Epath_2Eel @ A_27a @ A_27b @ V1n @ ( c_2Epath_2Etail @ A_27a @ A_27b @ V2p ) ) ) ) ).

thf(thm_2Epath_2Enth__label__def,axiom,
    ! [A_27a: $tType,A_27b: $tType] :
      ( ! [V0p: tyop_2Epath_2Epath @ A_27b @ A_27a] :
          ( ( c_2Epath_2Enth__label @ A_27a @ A_27b @ c_2Enum_2E0 @ V0p )
          = ( c_2Epath_2Efirst__label @ A_27b @ A_27a @ V0p ) )
      & ! [V1n: tyop_2Enum_2Enum,V2p: tyop_2Epath_2Epath @ A_27b @ A_27a] :
          ( ( c_2Epath_2Enth__label @ A_27a @ A_27b @ ( c_2Enum_2ESUC @ V1n ) @ V2p )
          = ( c_2Epath_2Enth__label @ A_27a @ A_27b @ V1n @ ( c_2Epath_2Etail @ A_27b @ A_27a @ V2p ) ) ) ) ).

thf(thm_2Epath_2Epconcat__def,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0p1: tyop_2Epath_2Epath @ A_27a @ A_27b,V1lab: A_27b,V2p2: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Epath_2Epconcat @ A_27a @ A_27b @ V0p1 @ V1lab @ V2p2 )
      = ( c_2Epath_2EtoPath @ A_27a @ A_27b @ ( c_2Epair_2E_2C @ A_27a @ ( tyop_2Ellist_2Ellist @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) ) @ ( c_2Epath_2Efirst @ A_27a @ A_27b @ V0p1 ) @ ( c_2Ellist_2ELAPPEND @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) @ ( c_2Epair_2ESND @ A_27a @ ( tyop_2Ellist_2Ellist @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) ) @ ( c_2Epath_2EfromPath @ A_27a @ A_27b @ V0p1 ) ) @ ( c_2Ellist_2ELCONS @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) @ ( c_2Epair_2E_2C @ A_27b @ A_27a @ V1lab @ ( c_2Epath_2Efirst @ A_27a @ A_27b @ V2p2 ) ) @ ( c_2Epair_2ESND @ A_27a @ ( tyop_2Ellist_2Ellist @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) ) @ ( c_2Epath_2EfromPath @ A_27a @ A_27b @ V2p2 ) ) ) ) ) ) ) ).

thf(thm_2Epath_2EPL__def,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Epath_2EPL @ A_27a @ A_27b @ V0p )
      = ( c_2Epred__set_2EGSPEC @ tyop_2Enum_2Enum @ tyop_2Enum_2Enum
        @ ^ [V1i: tyop_2Enum_2Enum] : ( c_2Epair_2E_2C @ tyop_2Enum_2Enum @ $o @ V1i @ ( c_2Emin_2E_3D_3D_3E @ ( c_2Epath_2Efinite @ A_27a @ A_27b @ V0p ) @ ( c_2Eprim__rec_2E_3C @ V1i @ ( c_2Eoption_2ETHE @ tyop_2Enum_2Enum @ ( c_2Epath_2Elength @ A_27a @ A_27b @ V0p ) ) ) ) ) ) ) ).

thf(thm_2Epath_2EfirstP__at__def,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0P: A_27a > $o,V1p: tyop_2Epath_2Epath @ A_27a @ A_27b,V2i: tyop_2Enum_2Enum] :
      ( ( c_2Epath_2EfirstP__at @ A_27a @ A_27b @ V0P @ V1p @ V2i )
    <=> ( ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ V2i @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V1p ) )
        & ( V0P @ ( c_2Epath_2Eel @ A_27a @ A_27b @ V2i @ V1p ) )
        & ! [V3j: tyop_2Enum_2Enum] :
            ( ( c_2Eprim__rec_2E_3C @ V3j @ V2i )
           => ( (~) @ ( V0P @ ( c_2Epath_2Eel @ A_27a @ A_27b @ V3j @ V1p ) ) ) ) ) ) ).

thf(thm_2Epath_2Eexists__def,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0P: A_27a > $o,V1p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Epath_2Eexists @ A_27a @ A_27b @ V0P @ V1p )
    <=> ? [V2i: tyop_2Enum_2Enum] : ( c_2Epath_2EfirstP__at @ A_27a @ A_27b @ V0P @ V1p @ V2i ) ) ).

thf(thm_2Epath_2Eevery__def,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0P: A_27a > $o,V1p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Epath_2Eevery @ A_27a @ A_27b @ V0P @ V1p )
    <=> ( (~) @ ( c_2Epath_2Eexists @ A_27a @ A_27b @ ( c_2Ecombin_2Eo @ A_27a @ $o @ $o @ c_2Ebool_2E_7E @ V0P ) @ V1p ) ) ) ).

thf(thm_2Epath_2Emem__def,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0s: A_27a,V1p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Epath_2Emem @ A_27a @ A_27b @ V0s @ V1p )
    <=> ? [V2i: tyop_2Enum_2Enum] :
          ( ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ V2i @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V1p ) )
          & ( V0s
            = ( c_2Epath_2Eel @ A_27a @ A_27b @ V2i @ V1p ) ) ) ) ).

thf(thm_2Epath_2Edrop__def,axiom,
    ! [A_27a: $tType,A_27b: $tType] :
      ( ! [V0p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( c_2Epath_2Edrop @ A_27a @ A_27b @ c_2Enum_2E0 @ V0p )
          = V0p )
      & ! [V1n: tyop_2Enum_2Enum,V2p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( c_2Epath_2Edrop @ A_27a @ A_27b @ ( c_2Enum_2ESUC @ V1n ) @ V2p )
          = ( c_2Epath_2Edrop @ A_27a @ A_27b @ V1n @ ( c_2Epath_2Etail @ A_27a @ A_27b @ V2p ) ) ) ) ).

thf(thm_2Epath_2Etake__def,axiom,
    ! [A_27a: $tType,A_27b: $tType] :
      ( ! [V0p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( c_2Epath_2Etake @ A_27a @ A_27b @ c_2Enum_2E0 @ V0p )
          = ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ ( c_2Epath_2Efirst @ A_27a @ A_27b @ V0p ) ) )
      & ! [V1n: tyop_2Enum_2Enum,V2p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( c_2Epath_2Etake @ A_27a @ A_27b @ ( c_2Enum_2ESUC @ V1n ) @ V2p )
          = ( c_2Epath_2Epcons @ A_27a @ A_27b @ ( c_2Epath_2Efirst @ A_27a @ A_27b @ V2p ) @ ( c_2Epath_2Efirst__label @ A_27a @ A_27b @ V2p ) @ ( c_2Epath_2Etake @ A_27a @ A_27b @ V1n @ ( c_2Epath_2Etail @ A_27a @ A_27b @ V2p ) ) ) ) ) ).

thf(thm_2Epath_2Eseg__def,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0i: tyop_2Enum_2Enum,V1j: tyop_2Enum_2Enum,V2p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Epath_2Eseg @ A_27a @ A_27b @ V0i @ V1j @ V2p )
      = ( c_2Epath_2Etake @ A_27a @ A_27b @ ( c_2Earithmetic_2E_2D @ V1j @ V0i ) @ ( c_2Epath_2Edrop @ A_27a @ A_27b @ V0i @ V2p ) ) ) ).

thf(thm_2Epath_2Elabels__def,axiom,
    ! [A_27a: $tType,A_27b: $tType] :
      ( ! [V0x: A_27a] :
          ( ( c_2Epath_2Elabels @ A_27a @ A_27b @ ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V0x ) )
          = ( c_2Ellist_2ELNIL @ A_27b ) )
      & ! [V1x: A_27a,V2r: A_27b,V3p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( c_2Epath_2Elabels @ A_27a @ A_27b @ ( c_2Epath_2Epcons @ A_27a @ A_27b @ V1x @ V2r @ V3p ) )
          = ( c_2Ellist_2ELCONS @ A_27b @ V2r @ ( c_2Epath_2Elabels @ A_27a @ A_27b @ V3p ) ) ) ) ).

thf(thm_2Epath_2Eis__stopped__def,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Epath_2Eis__stopped @ A_27a @ A_27b @ V0p )
    <=> ? [V1x: A_27a] :
          ( V0p
          = ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V1x ) ) ) ).

thf(thm_2Epath_2Efilter__def,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0P: A_27a > $o] :
      ( ! [V1x: A_27a] :
          ( ( V0P @ V1x )
         => ( ( c_2Epath_2Efilter @ A_27a @ A_27b @ V0P @ ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V1x ) )
            = ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V1x ) ) )
      & ! [V2x: A_27a,V3r: A_27b,V4p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( c_2Epath_2Efilter @ A_27a @ A_27b @ V0P @ ( c_2Epath_2Epcons @ A_27a @ A_27b @ V2x @ V3r @ V4p ) )
          = ( c_2Ebool_2ECOND @ ( tyop_2Epath_2Epath @ A_27a @ A_27b ) @ ( V0P @ V2x ) @ ( c_2Ebool_2ECOND @ ( tyop_2Epath_2Epath @ A_27a @ A_27b ) @ ( c_2Epath_2Eexists @ A_27a @ A_27b @ V0P @ V4p ) @ ( c_2Epath_2Epcons @ A_27a @ A_27b @ V2x @ V3r @ ( c_2Epath_2Efilter @ A_27a @ A_27b @ V0P @ V4p ) ) @ ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V2x ) ) @ ( c_2Epath_2Efilter @ A_27a @ A_27b @ V0P @ V4p ) ) ) ) ).

thf(thm_2Epath_2Epgenerate__def,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0f: tyop_2Enum_2Enum > A_27a,V1g: tyop_2Enum_2Enum > A_27b] :
      ( ( c_2Epath_2Epgenerate @ A_27a @ A_27b @ V0f @ V1g )
      = ( c_2Epath_2Epcons @ A_27a @ A_27b @ ( V0f @ c_2Enum_2E0 ) @ ( V1g @ c_2Enum_2E0 ) @ ( c_2Epath_2Epgenerate @ A_27a @ A_27b @ ( c_2Ecombin_2Eo @ tyop_2Enum_2Enum @ A_27a @ tyop_2Enum_2Enum @ V0f @ c_2Enum_2ESUC ) @ ( c_2Ecombin_2Eo @ tyop_2Enum_2Enum @ A_27b @ tyop_2Enum_2Enum @ V1g @ c_2Enum_2ESUC ) ) ) ) ).

thf(thm_2Epath_2Eokpath__f__def,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0R: A_27a > A_27b > A_27a > $o,V1X: ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > $o] :
      ( ( c_2Epath_2Eokpath__f @ A_27a @ A_27b @ V0R @ V1X )
      = ( c_2Epred__set_2EUNION @ ( tyop_2Epath_2Epath @ A_27a @ A_27b )
        @ ( c_2Epred__set_2EGSPEC @ ( tyop_2Epath_2Epath @ A_27a @ A_27b ) @ A_27a
          @ ^ [V2x: A_27a] : ( c_2Epair_2E_2C @ ( tyop_2Epath_2Epath @ A_27a @ A_27b ) @ $o @ ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V2x ) @ ( c_2Ebool_2EIN @ A_27a @ V2x @ ( c_2Epred__set_2EUNIV @ A_27a ) ) ) )
        @ ( c_2Epred__set_2EGSPEC @ ( tyop_2Epath_2Epath @ A_27a @ A_27b ) @ ( tyop_2Epair_2Eprod @ A_27a @ ( tyop_2Epair_2Eprod @ A_27b @ ( tyop_2Epath_2Epath @ A_27a @ A_27b ) ) )
          @ ( c_2Epair_2EUNCURRY @ A_27a @ ( tyop_2Epair_2Eprod @ A_27b @ ( tyop_2Epath_2Epath @ A_27a @ A_27b ) ) @ ( tyop_2Epair_2Eprod @ ( tyop_2Epath_2Epath @ A_27a @ A_27b ) @ $o )
            @ ^ [V3x: A_27a] :
                ( c_2Epair_2EUNCURRY @ A_27b @ ( tyop_2Epath_2Epath @ A_27a @ A_27b ) @ ( tyop_2Epair_2Eprod @ ( tyop_2Epath_2Epath @ A_27a @ A_27b ) @ $o )
                @ ^ [V4r: A_27b,V5p: tyop_2Epath_2Epath @ A_27a @ A_27b] : ( c_2Epair_2E_2C @ ( tyop_2Epath_2Epath @ A_27a @ A_27b ) @ $o @ ( c_2Epath_2Epcons @ A_27a @ A_27b @ V3x @ V4r @ V5p ) @ ( c_2Ebool_2E_2F_5C @ ( V0R @ V3x @ V4r @ ( c_2Epath_2Efirst @ A_27a @ A_27b @ V5p ) ) @ ( c_2Ebool_2EIN @ ( tyop_2Epath_2Epath @ A_27a @ A_27b ) @ V5p @ V1X ) ) ) ) ) ) ) ) ).

thf(thm_2Epath_2Eokpath__def,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0R: A_27a > A_27b > A_27a > $o] :
      ( ( c_2Epath_2Eokpath @ A_27a @ A_27b @ V0R )
      = ( c_2EfixedPoint_2Egfp @ ( tyop_2Epath_2Epath @ A_27a @ A_27b ) @ ( c_2Epath_2Eokpath__f @ A_27a @ A_27b @ V0R ) ) ) ).

thf(thm_2Epath_2Eplink__def,axiom,
    ! [A_27a: $tType,A_27b: $tType] :
      ( ! [V0x: A_27a,V1p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( c_2Epath_2Eplink @ A_27a @ A_27b @ ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V0x ) @ V1p )
          = V1p )
      & ! [V2x: A_27a,V3r: A_27b,V4p1: tyop_2Epath_2Epath @ A_27a @ A_27b,V5p2: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( c_2Epath_2Eplink @ A_27a @ A_27b @ ( c_2Epath_2Epcons @ A_27a @ A_27b @ V2x @ V3r @ V4p1 ) @ V5p2 )
          = ( c_2Epath_2Epcons @ A_27a @ A_27b @ V2x @ V3r @ ( c_2Epath_2Eplink @ A_27a @ A_27b @ V4p1 @ V5p2 ) ) ) ) ).

thf(thm_2Epath_2ESN__def,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0R: A_27a > A_27b > A_27a > $o] :
      ( ( c_2Epath_2ESN @ A_27a @ A_27b @ V0R )
      = ( c_2Erelation_2EWF @ A_27a
        @ ^ [V1x: A_27a,V2y: A_27a] :
            ( c_2Ebool_2E_3F @ A_27b
            @ ^ [V3l: A_27b] : ( V0R @ V2y @ V3l @ V1x ) ) ) ) ).

thf(thm_2Epath_2Eunfold__def,axiom,
    ! [A_27a: $tType,A_27b: $tType,A_27c: $tType,V0proj: A_27c > A_27a,V1f: A_27c > ( tyop_2Eoption_2Eoption @ ( tyop_2Epair_2Eprod @ A_27c @ A_27b ) ),V2s: A_27c] :
      ( ( c_2Epath_2Eunfold @ A_27a @ A_27b @ A_27c @ V0proj @ V1f @ V2s )
      = ( c_2Epath_2EtoPath @ A_27a @ A_27b
        @ ( c_2Epair_2E_2C @ A_27a @ ( tyop_2Ellist_2Ellist @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) ) @ ( V0proj @ V2s )
          @ ( c_2Ellist_2ELUNFOLD @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) @ A_27c
            @ ^ [V3s: A_27c] :
                ( c_2Eoption_2EOPTION__MAP @ ( tyop_2Epair_2Eprod @ A_27c @ A_27b ) @ ( tyop_2Epair_2Eprod @ A_27c @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) )
                @ ( c_2Epair_2EUNCURRY @ A_27c @ A_27b @ ( tyop_2Epair_2Eprod @ A_27c @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) )
                  @ ^ [V4next__s: A_27c,V5lbl: A_27b] : ( c_2Epair_2E_2C @ A_27c @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) @ V4next__s @ ( c_2Epair_2E_2C @ A_27b @ A_27a @ V5lbl @ ( V0proj @ V4next__s ) ) ) )
                @ ( V1f @ V3s ) )
            @ V2s ) ) ) ) ).

thf(thm_2Epath_2Etrace__machine__def,axiom,
    ! [A_27a: $tType,V0P: ( tyop_2Elist_2Elist @ A_27a ) > $o,V1s: tyop_2Elist_2Elist @ A_27a,V2l: A_27a,V3s_27: tyop_2Elist_2Elist @ A_27a] :
      ( ( c_2Epath_2Etrace__machine @ A_27a @ V0P @ V1s @ V2l @ V3s_27 )
    <=> ( ( V0P @ ( c_2Elist_2EAPPEND @ A_27a @ V1s @ ( c_2Elist_2ECONS @ A_27a @ V2l @ ( c_2Elist_2ENIL @ A_27a ) ) ) )
        & ( V3s_27
          = ( c_2Elist_2EAPPEND @ A_27a @ V1s @ ( c_2Elist_2ECONS @ A_27a @ V2l @ ( c_2Elist_2ENIL @ A_27a ) ) ) ) ) ) ).

thf(thm_2Epath_2Eparallel__comp__def,axiom,
    ! [A_27a: $tType,A_27b: $tType,A_27c: $tType,A_27d: $tType,A_27e: $tType,V0m1: A_27a > A_27b > A_27c > $o,V1m2: A_27d > A_27b > A_27e > $o,V2s1: A_27a,V3s2: A_27d,V4l: A_27b,V5s1_27: A_27c,V6s2_27: A_27e] :
      ( ( c_2Epath_2Eparallel__comp @ A_27a @ A_27b @ A_27c @ A_27d @ A_27e @ V0m1 @ V1m2 @ ( c_2Epair_2E_2C @ A_27a @ A_27d @ V2s1 @ V3s2 ) @ V4l @ ( c_2Epair_2E_2C @ A_27c @ A_27e @ V5s1_27 @ V6s2_27 ) )
    <=> ( ( V0m1 @ V2s1 @ V4l @ V5s1_27 )
        & ( V1m2 @ V3s2 @ V4l @ V6s2_27 ) ) ) ).

thf(thm_2Epath_2Epath__rep__bijections__thm,axiom,
    ! [A_27a: $tType,A_27b: $tType] :
      ( ! [V0a: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( c_2Epath_2EtoPath @ A_27a @ A_27b @ ( c_2Epath_2EfromPath @ A_27a @ A_27b @ V0a ) )
          = V0a )
      & ! [V1r: tyop_2Epair_2Eprod @ A_27a @ ( tyop_2Ellist_2Ellist @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) )] :
          ( ( c_2Epath_2EfromPath @ A_27a @ A_27b @ ( c_2Epath_2EtoPath @ A_27a @ A_27b @ V1r ) )
          = V1r ) ) ).

thf(thm_2Epath_2EtoPath__11,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0r: tyop_2Epair_2Eprod @ A_27a @ ( tyop_2Ellist_2Ellist @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) ),V1r_27: tyop_2Epair_2Eprod @ A_27a @ ( tyop_2Ellist_2Ellist @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) )] :
      ( ( ( c_2Epath_2EtoPath @ A_27a @ A_27b @ V0r )
        = ( c_2Epath_2EtoPath @ A_27a @ A_27b @ V1r_27 ) )
    <=> ( V0r = V1r_27 ) ) ).

thf(thm_2Epath_2EfromPath__11,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0a: tyop_2Epath_2Epath @ A_27a @ A_27b,V1a_27: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( ( c_2Epath_2EfromPath @ A_27a @ A_27b @ V0a )
        = ( c_2Epath_2EfromPath @ A_27a @ A_27b @ V1a_27 ) )
    <=> ( V0a = V1a_27 ) ) ).

thf(thm_2Epath_2EfromPath__onto,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0r: tyop_2Epair_2Eprod @ A_27a @ ( tyop_2Ellist_2Ellist @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) )] :
    ? [V1a: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( V0r
      = ( c_2Epath_2EfromPath @ A_27a @ A_27b @ V1a ) ) ).

thf(thm_2Epath_2EtoPath__onto,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0a: tyop_2Epath_2Epath @ A_27a @ A_27b] :
    ? [V1r: tyop_2Epair_2Eprod @ A_27a @ ( tyop_2Ellist_2Ellist @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) )] :
      ( V0a
      = ( c_2Epath_2EtoPath @ A_27a @ A_27b @ V1r ) ) ).

thf(thm_2Epath_2Estopped__at__11,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0x: A_27a,V1y: A_27a] :
      ( ( ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V0x )
        = ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V1y ) )
    <=> ( V0x = V1y ) ) ).

thf(thm_2Epath_2Epcons__11,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0x: A_27a,V1r: A_27b,V2p: tyop_2Epath_2Epath @ A_27a @ A_27b,V3y: A_27a,V4s: A_27b,V5q: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( ( c_2Epath_2Epcons @ A_27a @ A_27b @ V0x @ V1r @ V2p )
        = ( c_2Epath_2Epcons @ A_27a @ A_27b @ V3y @ V4s @ V5q ) )
    <=> ( ( V0x = V3y )
        & ( V1r = V4s )
        & ( V2p = V5q ) ) ) ).

thf(thm_2Epath_2Estopped__at__not__pcons,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0x: A_27a,V1y: A_27a,V2r: A_27b,V3p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( (~)
        @ ( ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V0x )
          = ( c_2Epath_2Epcons @ A_27a @ A_27b @ V1y @ V2r @ V3p ) ) )
      & ( (~)
        @ ( ( c_2Epath_2Epcons @ A_27a @ A_27b @ V1y @ V2r @ V3p )
          = ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V0x ) ) ) ) ).

thf(thm_2Epath_2Epath__cases,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ? [V1x: A_27a] :
          ( V0p
          = ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V1x ) )
      | ? [V2x: A_27a,V3r: A_27b,V4q: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( V0p
          = ( c_2Epath_2Epcons @ A_27a @ A_27b @ V2x @ V3r @ V4q ) ) ) ).

thf(thm_2Epath_2EFORALL__path,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0P: ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > $o] :
      ( ! [V1p: tyop_2Epath_2Epath @ A_27a @ A_27b] : ( V0P @ V1p )
    <=> ( ! [V2x: A_27a] : ( V0P @ ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V2x ) )
        & ! [V3x: A_27a,V4r: A_27b,V5p: tyop_2Epath_2Epath @ A_27a @ A_27b] : ( V0P @ ( c_2Epath_2Epcons @ A_27a @ A_27b @ V3x @ V4r @ V5p ) ) ) ) ).

thf(thm_2Epath_2EEXISTS__path,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0P: ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > $o] :
      ( ? [V1p: tyop_2Epath_2Epath @ A_27a @ A_27b] : ( V0P @ V1p )
    <=> ( ? [V2x: A_27a] : ( V0P @ ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V2x ) )
        | ? [V3x: A_27a,V4r: A_27b,V5p: tyop_2Epath_2Epath @ A_27a @ A_27b] : ( V0P @ ( c_2Epath_2Epcons @ A_27a @ A_27b @ V3x @ V4r @ V5p ) ) ) ) ).

thf(thm_2Epath_2Efirst__thm,axiom,
    ! [A_27a: $tType,A_27b: $tType] :
      ( ! [V0x: A_27a] :
          ( ( c_2Epath_2Efirst @ A_27a @ A_27b @ ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V0x ) )
          = V0x )
      & ! [V1x: A_27a,V2r: A_27b,V3p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( c_2Epath_2Efirst @ A_27a @ A_27b @ ( c_2Epath_2Epcons @ A_27a @ A_27b @ V1x @ V2r @ V3p ) )
          = V1x ) ) ).

thf(thm_2Epath_2Efinite__thm,axiom,
    ! [A_27a: $tType,A_27b: $tType] :
      ( ! [V0x: A_27a] :
          ( ( c_2Epath_2Efinite @ A_27a @ A_27b @ ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V0x ) )
          = c_2Ebool_2ET )
      & ! [V1x: A_27a,V2r: A_27b,V3p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( c_2Epath_2Efinite @ A_27a @ A_27b @ ( c_2Epath_2Epcons @ A_27a @ A_27b @ V1x @ V2r @ V3p ) )
          = ( c_2Epath_2Efinite @ A_27a @ A_27b @ V3p ) ) ) ).

thf(thm_2Epath_2Epath__bisimulation,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0p1: tyop_2Epath_2Epath @ A_27a @ A_27b,V1p2: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( V0p1 = V1p2 )
    <=> ? [V2R: ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > $o] :
          ( ( V2R @ V0p1 @ V1p2 )
          & ! [V3q1: tyop_2Epath_2Epath @ A_27a @ A_27b,V4q2: tyop_2Epath_2Epath @ A_27a @ A_27b] :
              ( ( V2R @ V3q1 @ V4q2 )
             => ( ? [V5x: A_27a] :
                    ( ( V3q1
                      = ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V5x ) )
                    & ( V4q2
                      = ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V5x ) ) )
                | ? [V6x: A_27a,V7r: A_27b,V8q1_27: tyop_2Epath_2Epath @ A_27a @ A_27b,V9q2_27: tyop_2Epath_2Epath @ A_27a @ A_27b] :
                    ( ( V3q1
                      = ( c_2Epath_2Epcons @ A_27a @ A_27b @ V6x @ V7r @ V8q1_27 ) )
                    & ( V4q2
                      = ( c_2Epath_2Epcons @ A_27a @ A_27b @ V6x @ V7r @ V9q2_27 ) )
                    & ( V2R @ V8q1_27 @ V9q2_27 ) ) ) ) ) ) ).

thf(thm_2Epath_2Efinite__path__ind,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0P: ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > $o] :
      ( ( ! [V1x: A_27a] : ( V0P @ ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V1x ) )
        & ! [V2x: A_27a,V3r: A_27b,V4p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
            ( ( ( c_2Epath_2Efinite @ A_27a @ A_27b @ V4p )
              & ( V0P @ V4p ) )
           => ( V0P @ ( c_2Epath_2Epcons @ A_27a @ A_27b @ V2x @ V3r @ V4p ) ) ) )
     => ! [V5q: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( c_2Epath_2Efinite @ A_27a @ A_27b @ V5q )
         => ( V0P @ V5q ) ) ) ).

thf(thm_2Epath_2Epmap__thm,axiom,
    ! [A_27a: $tType,A_27b: $tType,A_27c: $tType,A_27d: $tType,V0g: A_27d > A_27c,V1f: A_27a > A_27b] :
      ( ! [V2x: A_27a] :
          ( ( c_2Epath_2Epmap @ A_27a @ A_27d @ A_27b @ A_27c @ V1f @ V0g @ ( c_2Epath_2Estopped__at @ A_27a @ A_27d @ V2x ) )
          = ( c_2Epath_2Estopped__at @ A_27b @ A_27c @ ( V1f @ V2x ) ) )
      & ! [V3x: A_27a,V4r: A_27d,V5p: tyop_2Epath_2Epath @ A_27a @ A_27d] :
          ( ( c_2Epath_2Epmap @ A_27a @ A_27d @ A_27b @ A_27c @ V1f @ V0g @ ( c_2Epath_2Epcons @ A_27a @ A_27d @ V3x @ V4r @ V5p ) )
          = ( c_2Epath_2Epcons @ A_27b @ A_27c @ ( V1f @ V3x ) @ ( V0g @ V4r ) @ ( c_2Epath_2Epmap @ A_27a @ A_27d @ A_27b @ A_27c @ V1f @ V0g @ V5p ) ) ) ) ).

thf(thm_2Epath_2Efirst__pmap,axiom,
    ! [A_27a: $tType,A_27b: $tType,A_27c: $tType,A_27d: $tType,V0g: A_27b > A_27d,V1f: A_27a > A_27c,V2p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Epath_2Efirst @ A_27c @ A_27d @ ( c_2Epath_2Epmap @ A_27a @ A_27b @ A_27c @ A_27d @ V1f @ V0g @ V2p ) )
      = ( V1f @ ( c_2Epath_2Efirst @ A_27a @ A_27b @ V2p ) ) ) ).

thf(thm_2Epath_2Elast__pmap,axiom,
    ! [A_27a: $tType,A_27b: $tType,A_27c: $tType,A_27d: $tType,V0g: A_27b > A_27d,V1f: A_27a > A_27c,V2p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Epath_2Efinite @ A_27a @ A_27b @ V2p )
     => ( ( c_2Epath_2Elast @ A_27c @ A_27d @ ( c_2Epath_2Epmap @ A_27a @ A_27b @ A_27c @ A_27d @ V1f @ V0g @ V2p ) )
        = ( V1f @ ( c_2Epath_2Elast @ A_27a @ A_27b @ V2p ) ) ) ) ).

thf(thm_2Epath_2Efinite__pmap,axiom,
    ! [A_27a: $tType,A_27b: $tType,A_27c: $tType,A_27d: $tType,V0f: A_27a > A_27c,V1g: A_27b > A_27d,V2p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Epath_2Efinite @ A_27c @ A_27d @ ( c_2Epath_2Epmap @ A_27a @ A_27b @ A_27c @ A_27d @ V0f @ V1g @ V2p ) )
      = ( c_2Epath_2Efinite @ A_27a @ A_27b @ V2p ) ) ).

thf(thm_2Epath_2Elength__thm,axiom,
    ! [A_27a: $tType,A_27b: $tType,A_27c: $tType,A_27d: $tType] :
      ( ! [V0x: A_27a] :
          ( ( c_2Epath_2Elength @ A_27a @ A_27b @ ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V0x ) )
          = ( c_2Eoption_2ESOME @ tyop_2Enum_2Enum @ ( c_2Earithmetic_2ENUMERAL @ ( c_2Earithmetic_2EBIT1 @ c_2Earithmetic_2EZERO ) ) ) )
      & ! [V1x: A_27c,V2r: A_27d,V3p: tyop_2Epath_2Epath @ A_27c @ A_27d] :
          ( ( c_2Epath_2Elength @ A_27c @ A_27d @ ( c_2Epath_2Epcons @ A_27c @ A_27d @ V1x @ V2r @ V3p ) )
          = ( c_2Ebool_2ECOND @ ( tyop_2Eoption_2Eoption @ tyop_2Enum_2Enum ) @ ( c_2Epath_2Efinite @ A_27c @ A_27d @ V3p ) @ ( c_2Eoption_2ESOME @ tyop_2Enum_2Enum @ ( c_2Earithmetic_2E_2B @ ( c_2Eoption_2ETHE @ tyop_2Enum_2Enum @ ( c_2Epath_2Elength @ A_27c @ A_27d @ V3p ) ) @ ( c_2Earithmetic_2ENUMERAL @ ( c_2Earithmetic_2EBIT1 @ c_2Earithmetic_2EZERO ) ) ) ) @ ( c_2Eoption_2ENONE @ tyop_2Enum_2Enum ) ) ) ) ).

thf(thm_2Epath_2Ealt__length__thm,axiom,
    ! [A_27a: $tType,A_27b: $tType,A_27c: $tType,A_27d: $tType] :
      ( ! [V0x: A_27a] :
          ( ( c_2Epath_2Elength @ A_27a @ A_27b @ ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V0x ) )
          = ( c_2Eoption_2ESOME @ tyop_2Enum_2Enum @ ( c_2Earithmetic_2ENUMERAL @ ( c_2Earithmetic_2EBIT1 @ c_2Earithmetic_2EZERO ) ) ) )
      & ! [V1x: A_27c,V2r: A_27d,V3p: tyop_2Epath_2Epath @ A_27c @ A_27d] :
          ( ( c_2Epath_2Elength @ A_27c @ A_27d @ ( c_2Epath_2Epcons @ A_27c @ A_27d @ V1x @ V2r @ V3p ) )
          = ( c_2Eoption_2EOPTION__MAP @ tyop_2Enum_2Enum @ tyop_2Enum_2Enum @ c_2Enum_2ESUC @ ( c_2Epath_2Elength @ A_27c @ A_27d @ V3p ) ) ) ) ).

thf(thm_2Epath_2Elength__never__zero,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( (~)
      @ ( ( c_2Epath_2Elength @ A_27a @ A_27b @ V0p )
        = ( c_2Eoption_2ESOME @ tyop_2Enum_2Enum @ c_2Enum_2E0 ) ) ) ).

thf(thm_2Epath_2Efinite__length,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( ( c_2Epath_2Efinite @ A_27a @ A_27b @ V0p )
      <=> ? [V1n: tyop_2Enum_2Enum] :
            ( ( c_2Epath_2Elength @ A_27a @ A_27b @ V0p )
            = ( c_2Eoption_2ESOME @ tyop_2Enum_2Enum @ V1n ) ) )
      & ( ( (~) @ ( c_2Epath_2Efinite @ A_27a @ A_27b @ V0p ) )
      <=> ( ( c_2Epath_2Elength @ A_27a @ A_27b @ V0p )
          = ( c_2Eoption_2ENONE @ tyop_2Enum_2Enum ) ) ) ) ).

thf(thm_2Epath_2Elength__pmap,axiom,
    ! [A_27a: $tType,A_27b: $tType,A_27c: $tType,A_27d: $tType,V0f: A_27a > A_27b,V1g: A_27c > A_27d,V2p: tyop_2Epath_2Epath @ A_27a @ A_27c] :
      ( ( c_2Epath_2Elength @ A_27b @ A_27d @ ( c_2Epath_2Epmap @ A_27a @ A_27c @ A_27b @ A_27d @ V0f @ V1g @ V2p ) )
      = ( c_2Epath_2Elength @ A_27a @ A_27c @ V2p ) ) ).

thf(thm_2Epath_2Eel__def__compute,axiom,
    ! [A_27a: $tType,A_27b: $tType] :
      ( ! [V0p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( c_2Epath_2Eel @ A_27a @ A_27b @ c_2Enum_2E0 @ V0p )
          = ( c_2Epath_2Efirst @ A_27a @ A_27b @ V0p ) )
      & ! [V1n: tyop_2Enum_2Enum,V2p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( c_2Epath_2Eel @ A_27a @ A_27b @ ( c_2Earithmetic_2ENUMERAL @ ( c_2Earithmetic_2EBIT1 @ V1n ) ) @ V2p )
          = ( c_2Epath_2Eel @ A_27a @ A_27b @ ( c_2Earithmetic_2E_2D @ ( c_2Earithmetic_2ENUMERAL @ ( c_2Earithmetic_2EBIT1 @ V1n ) ) @ ( c_2Earithmetic_2ENUMERAL @ ( c_2Earithmetic_2EBIT1 @ c_2Earithmetic_2EZERO ) ) ) @ ( c_2Epath_2Etail @ A_27a @ A_27b @ V2p ) ) )
      & ! [V3n: tyop_2Enum_2Enum,V4p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( c_2Epath_2Eel @ A_27a @ A_27b @ ( c_2Earithmetic_2ENUMERAL @ ( c_2Earithmetic_2EBIT2 @ V3n ) ) @ V4p )
          = ( c_2Epath_2Eel @ A_27a @ A_27b @ ( c_2Earithmetic_2ENUMERAL @ ( c_2Earithmetic_2EBIT1 @ V3n ) ) @ ( c_2Epath_2Etail @ A_27a @ A_27b @ V4p ) ) ) ) ).

thf(thm_2Epath_2Enth__label__def__compute,axiom,
    ! [A_27a: $tType,A_27b: $tType] :
      ( ! [V0p: tyop_2Epath_2Epath @ A_27b @ A_27a] :
          ( ( c_2Epath_2Enth__label @ A_27a @ A_27b @ c_2Enum_2E0 @ V0p )
          = ( c_2Epath_2Efirst__label @ A_27b @ A_27a @ V0p ) )
      & ! [V1n: tyop_2Enum_2Enum,V2p: tyop_2Epath_2Epath @ A_27b @ A_27a] :
          ( ( c_2Epath_2Enth__label @ A_27a @ A_27b @ ( c_2Earithmetic_2ENUMERAL @ ( c_2Earithmetic_2EBIT1 @ V1n ) ) @ V2p )
          = ( c_2Epath_2Enth__label @ A_27a @ A_27b @ ( c_2Earithmetic_2E_2D @ ( c_2Earithmetic_2ENUMERAL @ ( c_2Earithmetic_2EBIT1 @ V1n ) ) @ ( c_2Earithmetic_2ENUMERAL @ ( c_2Earithmetic_2EBIT1 @ c_2Earithmetic_2EZERO ) ) ) @ ( c_2Epath_2Etail @ A_27b @ A_27a @ V2p ) ) )
      & ! [V3n: tyop_2Enum_2Enum,V4p: tyop_2Epath_2Epath @ A_27b @ A_27a] :
          ( ( c_2Epath_2Enth__label @ A_27a @ A_27b @ ( c_2Earithmetic_2ENUMERAL @ ( c_2Earithmetic_2EBIT2 @ V3n ) ) @ V4p )
          = ( c_2Epath_2Enth__label @ A_27a @ A_27b @ ( c_2Earithmetic_2ENUMERAL @ ( c_2Earithmetic_2EBIT1 @ V3n ) ) @ ( c_2Epath_2Etail @ A_27b @ A_27a @ V4p ) ) ) ) ).

thf(thm_2Epath_2Epath__Axiom,axiom,
    ! [A_27a: $tType,A_27b: $tType,A_27c: $tType,V0f: A_27a > ( tyop_2Epair_2Eprod @ A_27b @ ( tyop_2Eoption_2Eoption @ ( tyop_2Epair_2Eprod @ A_27c @ A_27a ) ) )] :
    ? [V1g: A_27a > ( tyop_2Epath_2Epath @ A_27b @ A_27c )] :
    ! [V2x: A_27a] :
      ( ( V1g @ V2x )
      = ( c_2Epair_2Epair__CASE @ ( tyop_2Epath_2Epath @ A_27b @ A_27c ) @ A_27b @ ( tyop_2Eoption_2Eoption @ ( tyop_2Epair_2Eprod @ A_27c @ A_27a ) ) @ ( V0f @ V2x )
        @ ^ [V3y: A_27b,V4v2: tyop_2Eoption_2Eoption @ ( tyop_2Epair_2Eprod @ A_27c @ A_27a )] :
            ( c_2Eoption_2Eoption__CASE @ ( tyop_2Epair_2Eprod @ A_27c @ A_27a ) @ ( tyop_2Epath_2Epath @ A_27b @ A_27c ) @ V4v2 @ ( c_2Epath_2Estopped__at @ A_27b @ A_27c @ V3y )
            @ ^ [V5v3: tyop_2Epair_2Eprod @ A_27c @ A_27a] :
                ( c_2Epair_2Epair__CASE @ ( tyop_2Epath_2Epath @ A_27b @ A_27c ) @ A_27c @ A_27a @ V5v3
                @ ^ [V6l: A_27c,V7v: A_27a] : ( c_2Epath_2Epcons @ A_27b @ A_27c @ V3y @ V6l @ ( V1g @ V7v ) ) ) ) ) ) ).

thf(thm_2Epath_2Epconcat__thm,axiom,
    ! [A_27a: $tType,A_27b: $tType,A_27c: $tType,A_27d: $tType] :
      ( ! [V0x: A_27a,V1lab: A_27b,V2p2: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( c_2Epath_2Epconcat @ A_27a @ A_27b @ ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V0x ) @ V1lab @ V2p2 )
          = ( c_2Epath_2Epcons @ A_27a @ A_27b @ V0x @ V1lab @ V2p2 ) )
      & ! [V3x: A_27c,V4r: A_27d,V5p: tyop_2Epath_2Epath @ A_27c @ A_27d,V6lab: A_27d,V7p2: tyop_2Epath_2Epath @ A_27c @ A_27d] :
          ( ( c_2Epath_2Epconcat @ A_27c @ A_27d @ ( c_2Epath_2Epcons @ A_27c @ A_27d @ V3x @ V4r @ V5p ) @ V6lab @ V7p2 )
          = ( c_2Epath_2Epcons @ A_27c @ A_27d @ V3x @ V4r @ ( c_2Epath_2Epconcat @ A_27c @ A_27d @ V5p @ V6lab @ V7p2 ) ) ) ) ).

thf(thm_2Epath_2Epconcat__eq__stopped,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0p1: tyop_2Epath_2Epath @ A_27a @ A_27b,V1lab: A_27b,V2p2: tyop_2Epath_2Epath @ A_27a @ A_27b,V3x: A_27a] :
      ( ( (~)
        @ ( ( c_2Epath_2Epconcat @ A_27a @ A_27b @ V0p1 @ V1lab @ V2p2 )
          = ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V3x ) ) )
      & ( (~)
        @ ( ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V3x )
          = ( c_2Epath_2Epconcat @ A_27a @ A_27b @ V0p1 @ V1lab @ V2p2 ) ) ) ) ).

thf(thm_2Epath_2Epconcat__eq__pcons,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0x: A_27a,V1r: A_27b,V2p: tyop_2Epath_2Epath @ A_27a @ A_27b,V3p1: tyop_2Epath_2Epath @ A_27a @ A_27b,V4lab: A_27b,V5p2: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( ( ( c_2Epath_2Epconcat @ A_27a @ A_27b @ V3p1 @ V4lab @ V5p2 )
          = ( c_2Epath_2Epcons @ A_27a @ A_27b @ V0x @ V1r @ V2p ) )
      <=> ( ( ( V4lab = V1r )
            & ( V3p1
              = ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V0x ) )
            & ( V2p = V5p2 ) )
          | ? [V6p1_27: tyop_2Epath_2Epath @ A_27a @ A_27b] :
              ( ( V3p1
                = ( c_2Epath_2Epcons @ A_27a @ A_27b @ V0x @ V1r @ V6p1_27 ) )
              & ( V2p
                = ( c_2Epath_2Epconcat @ A_27a @ A_27b @ V6p1_27 @ V4lab @ V5p2 ) ) ) ) )
      & ( ( ( c_2Epath_2Epcons @ A_27a @ A_27b @ V0x @ V1r @ V2p )
          = ( c_2Epath_2Epconcat @ A_27a @ A_27b @ V3p1 @ V4lab @ V5p2 ) )
      <=> ( ( ( V4lab = V1r )
            & ( V3p1
              = ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V0x ) )
            & ( V2p = V5p2 ) )
          | ? [V7p1_27: tyop_2Epath_2Epath @ A_27a @ A_27b] :
              ( ( V3p1
                = ( c_2Epath_2Epcons @ A_27a @ A_27b @ V0x @ V1r @ V7p1_27 ) )
              & ( V2p
                = ( c_2Epath_2Epconcat @ A_27a @ A_27b @ V7p1_27 @ V4lab @ V5p2 ) ) ) ) ) ) ).

thf(thm_2Epath_2Efinite__pconcat,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0p1: tyop_2Epath_2Epath @ A_27a @ A_27b,V1lab: A_27b,V2p2: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Epath_2Efinite @ A_27a @ A_27b @ ( c_2Epath_2Epconcat @ A_27a @ A_27b @ V0p1 @ V1lab @ V2p2 ) )
    <=> ( ( c_2Epath_2Efinite @ A_27a @ A_27b @ V0p1 )
        & ( c_2Epath_2Efinite @ A_27a @ A_27b @ V2p2 ) ) ) ).

thf(thm_2Epath_2Einfinite__PL,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( (~) @ ( c_2Epath_2Efinite @ A_27a @ A_27b @ V0p ) )
     => ! [V1i: tyop_2Enum_2Enum] : ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ V1i @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V0p ) ) ) ).

thf(thm_2Epath_2EPL__pcons,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0x: A_27a,V1r: A_27b,V2q: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Epath_2EPL @ A_27a @ A_27b @ ( c_2Epath_2Epcons @ A_27a @ A_27b @ V0x @ V1r @ V2q ) )
      = ( c_2Epred__set_2EINSERT @ tyop_2Enum_2Enum @ c_2Enum_2E0 @ ( c_2Epred__set_2EIMAGE @ tyop_2Enum_2Enum @ tyop_2Enum_2Enum @ c_2Enum_2ESUC @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V2q ) ) ) ) ).

thf(thm_2Epath_2EPL__stopped__at,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0x: A_27a] :
      ( ( c_2Epath_2EPL @ A_27a @ A_27b @ ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V0x ) )
      = ( c_2Epred__set_2EINSERT @ tyop_2Enum_2Enum @ c_2Enum_2E0 @ ( c_2Epred__set_2EEMPTY @ tyop_2Enum_2Enum ) ) ) ).

thf(thm_2Epath_2EPL__thm,axiom,
    ! [A_27a: $tType,A_27b: $tType] :
      ( ! [V0x: A_27a] :
          ( ( c_2Epath_2EPL @ A_27a @ A_27b @ ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V0x ) )
          = ( c_2Epred__set_2EINSERT @ tyop_2Enum_2Enum @ c_2Enum_2E0 @ ( c_2Epred__set_2EEMPTY @ tyop_2Enum_2Enum ) ) )
      & ! [V1x: A_27a,V2r: A_27b,V3q: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( c_2Epath_2EPL @ A_27a @ A_27b @ ( c_2Epath_2Epcons @ A_27a @ A_27b @ V1x @ V2r @ V3q ) )
          = ( c_2Epred__set_2EINSERT @ tyop_2Enum_2Enum @ c_2Enum_2E0 @ ( c_2Epred__set_2EIMAGE @ tyop_2Enum_2Enum @ tyop_2Enum_2Enum @ c_2Enum_2ESUC @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V3q ) ) ) ) ) ).

thf(thm_2Epath_2EPL__0,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0p: tyop_2Epath_2Epath @ A_27a @ A_27b] : ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ c_2Enum_2E0 @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V0p ) ) ).

thf(thm_2Epath_2EPL__downward__closed,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0i: tyop_2Enum_2Enum,V1p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ V0i @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V1p ) )
     => ! [V2j: tyop_2Enum_2Enum] :
          ( ( c_2Eprim__rec_2E_3C @ V2j @ V0i )
         => ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ V2j @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V1p ) ) ) ) ).

thf(thm_2Epath_2EPL__pmap,axiom,
    ! [A_27a: $tType,A_27b: $tType,A_27c: $tType,A_27d: $tType,V0p: tyop_2Epath_2Epath @ A_27c @ A_27d,V1g: A_27d > A_27b,V2f: A_27c > A_27a] :
      ( ( c_2Epath_2EPL @ A_27a @ A_27b @ ( c_2Epath_2Epmap @ A_27c @ A_27d @ A_27a @ A_27b @ V2f @ V1g @ V0p ) )
      = ( c_2Epath_2EPL @ A_27c @ A_27d @ V0p ) ) ).

thf(thm_2Epath_2Eel__pmap,axiom,
    ! [A_27a: $tType,A_27b: $tType,A_27c: $tType,A_27d: $tType,V0g: A_27b > A_27d,V1f: A_27a > A_27c,V2i: tyop_2Enum_2Enum,V3p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ V2i @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V3p ) )
     => ( ( c_2Epath_2Eel @ A_27c @ A_27d @ V2i @ ( c_2Epath_2Epmap @ A_27a @ A_27b @ A_27c @ A_27d @ V1f @ V0g @ V3p ) )
        = ( V1f @ ( c_2Epath_2Eel @ A_27a @ A_27b @ V2i @ V3p ) ) ) ) ).

thf(thm_2Epath_2Enth__label__pmap,axiom,
    ! [A_27a: $tType,A_27b: $tType,A_27c: $tType,A_27d: $tType,V0g: A_27b > A_27c,V1f: A_27a > A_27d,V2i: tyop_2Enum_2Enum,V3p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ ( c_2Enum_2ESUC @ V2i ) @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V3p ) )
     => ( ( c_2Epath_2Enth__label @ A_27c @ A_27d @ V2i @ ( c_2Epath_2Epmap @ A_27a @ A_27b @ A_27d @ A_27c @ V1f @ V0g @ V3p ) )
        = ( V0g @ ( c_2Epath_2Enth__label @ A_27b @ A_27a @ V2i @ V3p ) ) ) ) ).

thf(thm_2Epath_2EfirstP__at__thm,axiom,
    ! [A_27a: $tType,A_27b: $tType] :
      ( ! [V0P: A_27a > $o,V1x: A_27a,V2n: tyop_2Enum_2Enum] :
          ( ( c_2Epath_2EfirstP__at @ A_27a @ A_27b @ V0P @ ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V1x ) @ V2n )
        <=> ( ( V2n = c_2Enum_2E0 )
            & ( V0P @ V1x ) ) )
      & ! [V3P: A_27a > $o,V4n: tyop_2Enum_2Enum,V5x: A_27a,V6r: A_27b,V7p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( c_2Epath_2EfirstP__at @ A_27a @ A_27b @ V3P @ ( c_2Epath_2Epcons @ A_27a @ A_27b @ V5x @ V6r @ V7p ) @ V4n )
        <=> ( ( ( V4n = c_2Enum_2E0 )
              & ( V3P @ V5x ) )
            | ( ( c_2Eprim__rec_2E_3C @ c_2Enum_2E0 @ V4n )
              & ( (~) @ ( V3P @ V5x ) )
              & ( c_2Epath_2EfirstP__at @ A_27a @ A_27b @ V3P @ V7p @ ( c_2Earithmetic_2E_2D @ V4n @ ( c_2Earithmetic_2ENUMERAL @ ( c_2Earithmetic_2EBIT1 @ c_2Earithmetic_2EZERO ) ) ) ) ) ) ) ) ).

thf(thm_2Epath_2EfirstP__at__zero,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0P: A_27a > $o,V1p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Epath_2EfirstP__at @ A_27a @ A_27b @ V0P @ V1p @ c_2Enum_2E0 )
      = ( V0P @ ( c_2Epath_2Efirst @ A_27a @ A_27b @ V1p ) ) ) ).

thf(thm_2Epath_2Eexists__thm,axiom,
    ! [A_27a: $tType,A_27b: $tType,A_27c: $tType,V0P: A_27a > $o] :
      ( ! [V1x: A_27a] :
          ( ( c_2Epath_2Eexists @ A_27a @ A_27b @ V0P @ ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V1x ) )
          = ( V0P @ V1x ) )
      & ! [V2x: A_27a,V3r: A_27c,V4p: tyop_2Epath_2Epath @ A_27a @ A_27c] :
          ( ( c_2Epath_2Eexists @ A_27a @ A_27c @ V0P @ ( c_2Epath_2Epcons @ A_27a @ A_27c @ V2x @ V3r @ V4p ) )
        <=> ( ( V0P @ V2x )
            | ( c_2Epath_2Eexists @ A_27a @ A_27c @ V0P @ V4p ) ) ) ) ).

thf(thm_2Epath_2Eevery__thm,axiom,
    ! [A_27a: $tType,A_27b: $tType,A_27c: $tType,V0P: A_27a > $o] :
      ( ! [V1x: A_27a] :
          ( ( c_2Epath_2Eevery @ A_27a @ A_27b @ V0P @ ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V1x ) )
          = ( V0P @ V1x ) )
      & ! [V2x: A_27a,V3r: A_27c,V4p: tyop_2Epath_2Epath @ A_27a @ A_27c] :
          ( ( c_2Epath_2Eevery @ A_27a @ A_27c @ V0P @ ( c_2Epath_2Epcons @ A_27a @ A_27c @ V2x @ V3r @ V4p ) )
        <=> ( ( V0P @ V2x )
            & ( c_2Epath_2Eevery @ A_27a @ A_27c @ V0P @ V4p ) ) ) ) ).

thf(thm_2Epath_2Enot__every,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0P: A_27a > $o,V1p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( (~) @ ( c_2Epath_2Eevery @ A_27a @ A_27b @ V0P @ V1p ) )
    <=> ( c_2Epath_2Eexists @ A_27a @ A_27b @ ( c_2Ecombin_2Eo @ A_27a @ $o @ $o @ c_2Ebool_2E_7E @ V0P ) @ V1p ) ) ).

thf(thm_2Epath_2Enot__exists,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0P: A_27a > $o,V1p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( (~) @ ( c_2Epath_2Eexists @ A_27a @ A_27b @ V0P @ V1p ) )
    <=> ( c_2Epath_2Eevery @ A_27a @ A_27b @ ( c_2Ecombin_2Eo @ A_27a @ $o @ $o @ c_2Ebool_2E_7E @ V0P ) @ V1p ) ) ).

thf(thm_2Epath_2Eexists__el,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0P: A_27a > $o,V1p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Epath_2Eexists @ A_27a @ A_27b @ V0P @ V1p )
    <=> ? [V2i: tyop_2Enum_2Enum] :
          ( ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ V2i @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V1p ) )
          & ( V0P @ ( c_2Epath_2Eel @ A_27a @ A_27b @ V2i @ V1p ) ) ) ) ).

thf(thm_2Epath_2Eevery__el,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0P: A_27a > $o,V1p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Epath_2Eevery @ A_27a @ A_27b @ V0P @ V1p )
    <=> ! [V2i: tyop_2Enum_2Enum] :
          ( ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ V2i @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V1p ) )
         => ( V0P @ ( c_2Epath_2Eel @ A_27a @ A_27b @ V2i @ V1p ) ) ) ) ).

thf(thm_2Epath_2Eevery__coinduction,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0P: ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > $o,V1Q: A_27a > $o] :
      ( ( ! [V2x: A_27a] :
            ( ( V0P @ ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V2x ) )
           => ( V1Q @ V2x ) )
        & ! [V3x: A_27a,V4r: A_27b,V5p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
            ( ( V0P @ ( c_2Epath_2Epcons @ A_27a @ A_27b @ V3x @ V4r @ V5p ) )
           => ( ( V1Q @ V3x )
              & ( V0P @ V5p ) ) ) )
     => ! [V6p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( V0P @ V6p )
         => ( c_2Epath_2Eevery @ A_27a @ A_27b @ V1Q @ V6p ) ) ) ).

thf(thm_2Epath_2Eexists__induction,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0Q: A_27a > $o,V1P: ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > $o] :
      ( ( ! [V2x: A_27a] :
            ( ( V0Q @ V2x )
           => ( V1P @ ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V2x ) ) )
        & ! [V3x: A_27a,V4r: A_27b,V5p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
            ( ( V0Q @ V3x )
           => ( V1P @ ( c_2Epath_2Epcons @ A_27a @ A_27b @ V3x @ V4r @ V5p ) ) )
        & ! [V6x: A_27a,V7r: A_27b,V8p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
            ( ( V1P @ V8p )
           => ( V1P @ ( c_2Epath_2Epcons @ A_27a @ A_27b @ V6x @ V7r @ V8p ) ) ) )
     => ! [V9p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( c_2Epath_2Eexists @ A_27a @ A_27b @ V0Q @ V9p )
         => ( V1P @ V9p ) ) ) ).

thf(thm_2Epath_2Emem__thm,axiom,
    ! [A_27a: $tType,A_27b: $tType,A_27c: $tType,A_27d: $tType] :
      ( ! [V0x: A_27a,V1s: A_27a] :
          ( ( c_2Epath_2Emem @ A_27a @ A_27b @ V1s @ ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V0x ) )
        <=> ( V1s = V0x ) )
      & ! [V2x: A_27c,V3r: A_27d,V4p: tyop_2Epath_2Epath @ A_27c @ A_27d,V5s: A_27c] :
          ( ( c_2Epath_2Emem @ A_27c @ A_27d @ V5s @ ( c_2Epath_2Epcons @ A_27c @ A_27d @ V2x @ V3r @ V4p ) )
        <=> ( ( V5s = V2x )
            | ( c_2Epath_2Emem @ A_27c @ A_27d @ V5s @ V4p ) ) ) ) ).

thf(thm_2Epath_2Edrop__def__compute,axiom,
    ! [A_27a: $tType,A_27b: $tType] :
      ( ! [V0p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( c_2Epath_2Edrop @ A_27a @ A_27b @ c_2Enum_2E0 @ V0p )
          = V0p )
      & ! [V1n: tyop_2Enum_2Enum,V2p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( c_2Epath_2Edrop @ A_27a @ A_27b @ ( c_2Earithmetic_2ENUMERAL @ ( c_2Earithmetic_2EBIT1 @ V1n ) ) @ V2p )
          = ( c_2Epath_2Edrop @ A_27a @ A_27b @ ( c_2Earithmetic_2E_2D @ ( c_2Earithmetic_2ENUMERAL @ ( c_2Earithmetic_2EBIT1 @ V1n ) ) @ ( c_2Earithmetic_2ENUMERAL @ ( c_2Earithmetic_2EBIT1 @ c_2Earithmetic_2EZERO ) ) ) @ ( c_2Epath_2Etail @ A_27a @ A_27b @ V2p ) ) )
      & ! [V3n: tyop_2Enum_2Enum,V4p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( c_2Epath_2Edrop @ A_27a @ A_27b @ ( c_2Earithmetic_2ENUMERAL @ ( c_2Earithmetic_2EBIT2 @ V3n ) ) @ V4p )
          = ( c_2Epath_2Edrop @ A_27a @ A_27b @ ( c_2Earithmetic_2ENUMERAL @ ( c_2Earithmetic_2EBIT1 @ V3n ) ) @ ( c_2Epath_2Etail @ A_27a @ A_27b @ V4p ) ) ) ) ).

thf(thm_2Epath_2Enumeral__drop,axiom,
    ! [A_27a: $tType,A_27b: $tType] :
      ( ! [V0n: tyop_2Enum_2Enum,V1p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( c_2Epath_2Edrop @ A_27a @ A_27b @ ( c_2Earithmetic_2ENUMERAL @ ( c_2Earithmetic_2EBIT1 @ V0n ) ) @ V1p )
          = ( c_2Epath_2Edrop @ A_27a @ A_27b @ ( c_2Earithmetic_2E_2D @ ( c_2Earithmetic_2ENUMERAL @ ( c_2Earithmetic_2EBIT1 @ V0n ) ) @ ( c_2Earithmetic_2ENUMERAL @ ( c_2Earithmetic_2EBIT1 @ c_2Earithmetic_2EZERO ) ) ) @ ( c_2Epath_2Etail @ A_27a @ A_27b @ V1p ) ) )
      & ! [V2n: tyop_2Enum_2Enum,V3p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( c_2Epath_2Edrop @ A_27a @ A_27b @ ( c_2Earithmetic_2ENUMERAL @ ( c_2Earithmetic_2EBIT2 @ V2n ) ) @ V3p )
          = ( c_2Epath_2Edrop @ A_27a @ A_27b @ ( c_2Earithmetic_2ENUMERAL @ ( c_2Earithmetic_2EBIT1 @ V2n ) ) @ ( c_2Epath_2Etail @ A_27a @ A_27b @ V3p ) ) ) ) ).

thf(thm_2Epath_2Efinite__drop,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0p: tyop_2Epath_2Epath @ A_27a @ A_27b,V1n: tyop_2Enum_2Enum] :
      ( ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ V1n @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V0p ) )
     => ( ( c_2Epath_2Efinite @ A_27a @ A_27b @ ( c_2Epath_2Edrop @ A_27a @ A_27b @ V1n @ V0p ) )
        = ( c_2Epath_2Efinite @ A_27a @ A_27b @ V0p ) ) ) ).

thf(thm_2Epath_2Elength__drop,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0p: tyop_2Epath_2Epath @ A_27a @ A_27b,V1n: tyop_2Enum_2Enum] :
      ( ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ V1n @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V0p ) )
     => ( ( c_2Epath_2Elength @ A_27a @ A_27b @ ( c_2Epath_2Edrop @ A_27a @ A_27b @ V1n @ V0p ) )
        = ( c_2Eoption_2Eoption__CASE @ tyop_2Enum_2Enum @ ( tyop_2Eoption_2Eoption @ tyop_2Enum_2Enum ) @ ( c_2Epath_2Elength @ A_27a @ A_27b @ V0p ) @ ( c_2Eoption_2ENONE @ tyop_2Enum_2Enum )
          @ ^ [V2m: tyop_2Enum_2Enum] : ( c_2Eoption_2ESOME @ tyop_2Enum_2Enum @ ( c_2Earithmetic_2E_2D @ V2m @ V1n ) ) ) ) ) ).

thf(thm_2Epath_2EPL__drop,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0p: tyop_2Epath_2Epath @ A_27a @ A_27b,V1i: tyop_2Enum_2Enum] :
      ( ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ V1i @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V0p ) )
     => ( ( c_2Epath_2EPL @ A_27a @ A_27b @ ( c_2Epath_2Edrop @ A_27a @ A_27b @ V1i @ V0p ) )
        = ( c_2Epred__set_2EIMAGE @ tyop_2Enum_2Enum @ tyop_2Enum_2Enum
          @ ^ [V2n: tyop_2Enum_2Enum] : ( c_2Earithmetic_2E_2D @ V2n @ V1i )
          @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V0p ) ) ) ) ).

thf(thm_2Epath_2EIN__PL__drop,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0i: tyop_2Enum_2Enum,V1j: tyop_2Enum_2Enum,V2p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ V0i @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V2p ) )
     => ( ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ V1j @ ( c_2Epath_2EPL @ A_27a @ A_27b @ ( c_2Epath_2Edrop @ A_27a @ A_27b @ V0i @ V2p ) ) )
        = ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ ( c_2Earithmetic_2E_2B @ V0i @ V1j ) @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V2p ) ) ) ) ).

thf(thm_2Epath_2Efirst__drop,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0i: tyop_2Enum_2Enum,V1p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ V0i @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V1p ) )
     => ( ( c_2Epath_2Efirst @ A_27a @ A_27b @ ( c_2Epath_2Edrop @ A_27a @ A_27b @ V0i @ V1p ) )
        = ( c_2Epath_2Eel @ A_27a @ A_27b @ V0i @ V1p ) ) ) ).

thf(thm_2Epath_2Efirst__label__drop,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0i: tyop_2Enum_2Enum,V1p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ V0i @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V1p ) )
     => ( ( c_2Epath_2Efirst__label @ A_27a @ A_27b @ ( c_2Epath_2Edrop @ A_27a @ A_27b @ V0i @ V1p ) )
        = ( c_2Epath_2Enth__label @ A_27b @ A_27a @ V0i @ V1p ) ) ) ).

thf(thm_2Epath_2Etail__drop,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0i: tyop_2Enum_2Enum,V1p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ ( c_2Earithmetic_2E_2B @ V0i @ ( c_2Earithmetic_2ENUMERAL @ ( c_2Earithmetic_2EBIT1 @ c_2Earithmetic_2EZERO ) ) ) @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V1p ) )
     => ( ( c_2Epath_2Etail @ A_27a @ A_27b @ ( c_2Epath_2Edrop @ A_27a @ A_27b @ V0i @ V1p ) )
        = ( c_2Epath_2Edrop @ A_27a @ A_27b @ ( c_2Earithmetic_2E_2B @ V0i @ ( c_2Earithmetic_2ENUMERAL @ ( c_2Earithmetic_2EBIT1 @ c_2Earithmetic_2EZERO ) ) ) @ V1p ) ) ) ).

thf(thm_2Epath_2Eel__drop,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0i: tyop_2Enum_2Enum,V1j: tyop_2Enum_2Enum,V2p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ ( c_2Earithmetic_2E_2B @ V0i @ V1j ) @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V2p ) )
     => ( ( c_2Epath_2Eel @ A_27a @ A_27b @ V0i @ ( c_2Epath_2Edrop @ A_27a @ A_27b @ V1j @ V2p ) )
        = ( c_2Epath_2Eel @ A_27a @ A_27b @ ( c_2Earithmetic_2E_2B @ V0i @ V1j ) @ V2p ) ) ) ).

thf(thm_2Epath_2Enth__label__drop,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0i: tyop_2Enum_2Enum,V1j: tyop_2Enum_2Enum,V2p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ ( c_2Enum_2ESUC @ ( c_2Earithmetic_2E_2B @ V0i @ V1j ) ) @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V2p ) )
     => ( ( c_2Epath_2Enth__label @ A_27b @ A_27a @ V0i @ ( c_2Epath_2Edrop @ A_27a @ A_27b @ V1j @ V2p ) )
        = ( c_2Epath_2Enth__label @ A_27b @ A_27a @ ( c_2Earithmetic_2E_2B @ V0i @ V1j ) @ V2p ) ) ) ).

thf(thm_2Epath_2Etake__def__compute,axiom,
    ! [A_27a: $tType,A_27b: $tType] :
      ( ! [V0p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( c_2Epath_2Etake @ A_27a @ A_27b @ c_2Enum_2E0 @ V0p )
          = ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ ( c_2Epath_2Efirst @ A_27a @ A_27b @ V0p ) ) )
      & ! [V1n: tyop_2Enum_2Enum,V2p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( c_2Epath_2Etake @ A_27a @ A_27b @ ( c_2Earithmetic_2ENUMERAL @ ( c_2Earithmetic_2EBIT1 @ V1n ) ) @ V2p )
          = ( c_2Epath_2Epcons @ A_27a @ A_27b @ ( c_2Epath_2Efirst @ A_27a @ A_27b @ V2p ) @ ( c_2Epath_2Efirst__label @ A_27a @ A_27b @ V2p ) @ ( c_2Epath_2Etake @ A_27a @ A_27b @ ( c_2Earithmetic_2E_2D @ ( c_2Earithmetic_2ENUMERAL @ ( c_2Earithmetic_2EBIT1 @ V1n ) ) @ ( c_2Earithmetic_2ENUMERAL @ ( c_2Earithmetic_2EBIT1 @ c_2Earithmetic_2EZERO ) ) ) @ ( c_2Epath_2Etail @ A_27a @ A_27b @ V2p ) ) ) )
      & ! [V3n: tyop_2Enum_2Enum,V4p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( c_2Epath_2Etake @ A_27a @ A_27b @ ( c_2Earithmetic_2ENUMERAL @ ( c_2Earithmetic_2EBIT2 @ V3n ) ) @ V4p )
          = ( c_2Epath_2Epcons @ A_27a @ A_27b @ ( c_2Epath_2Efirst @ A_27a @ A_27b @ V4p ) @ ( c_2Epath_2Efirst__label @ A_27a @ A_27b @ V4p ) @ ( c_2Epath_2Etake @ A_27a @ A_27b @ ( c_2Earithmetic_2ENUMERAL @ ( c_2Earithmetic_2EBIT1 @ V3n ) ) @ ( c_2Epath_2Etail @ A_27a @ A_27b @ V4p ) ) ) ) ) ).

thf(thm_2Epath_2Efirst__take,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0p: tyop_2Epath_2Epath @ A_27a @ A_27b,V1i: tyop_2Enum_2Enum] :
      ( ( c_2Epath_2Efirst @ A_27a @ A_27b @ ( c_2Epath_2Etake @ A_27a @ A_27b @ V1i @ V0p ) )
      = ( c_2Epath_2Efirst @ A_27a @ A_27b @ V0p ) ) ).

thf(thm_2Epath_2Efinite__take,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0p: tyop_2Epath_2Epath @ A_27a @ A_27b,V1i: tyop_2Enum_2Enum] :
      ( ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ V1i @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V0p ) )
     => ( c_2Epath_2Efinite @ A_27a @ A_27b @ ( c_2Epath_2Etake @ A_27a @ A_27b @ V1i @ V0p ) ) ) ).

thf(thm_2Epath_2Elength__take,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0p: tyop_2Epath_2Epath @ A_27a @ A_27b,V1i: tyop_2Enum_2Enum] :
      ( ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ V1i @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V0p ) )
     => ( ( c_2Epath_2Elength @ A_27a @ A_27b @ ( c_2Epath_2Etake @ A_27a @ A_27b @ V1i @ V0p ) )
        = ( c_2Eoption_2ESOME @ tyop_2Enum_2Enum @ ( c_2Earithmetic_2E_2B @ V1i @ ( c_2Earithmetic_2ENUMERAL @ ( c_2Earithmetic_2EBIT1 @ c_2Earithmetic_2EZERO ) ) ) ) ) ) ).

thf(thm_2Epath_2EPL__take,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0p: tyop_2Epath_2Epath @ A_27a @ A_27b,V1i: tyop_2Enum_2Enum] :
      ( ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ V1i @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V0p ) )
     => ( ( c_2Epath_2EPL @ A_27a @ A_27b @ ( c_2Epath_2Etake @ A_27a @ A_27b @ V1i @ V0p ) )
        = ( c_2Epred__set_2EGSPEC @ tyop_2Enum_2Enum @ tyop_2Enum_2Enum
          @ ^ [V2n: tyop_2Enum_2Enum] : ( c_2Epair_2E_2C @ tyop_2Enum_2Enum @ $o @ V2n @ ( c_2Earithmetic_2E_3C_3D @ V2n @ V1i ) ) ) ) ) ).

thf(thm_2Epath_2Elast__take,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0i: tyop_2Enum_2Enum,V1p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ V0i @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V1p ) )
     => ( ( c_2Epath_2Elast @ A_27a @ A_27b @ ( c_2Epath_2Etake @ A_27a @ A_27b @ V0i @ V1p ) )
        = ( c_2Epath_2Eel @ A_27a @ A_27b @ V0i @ V1p ) ) ) ).

thf(thm_2Epath_2Enth__label__take,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0n: tyop_2Enum_2Enum,V1p: tyop_2Epath_2Epath @ A_27a @ A_27b,V2i: tyop_2Enum_2Enum] :
      ( ( ( c_2Eprim__rec_2E_3C @ V2i @ V0n )
        & ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ V0n @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V1p ) ) )
     => ( ( c_2Epath_2Enth__label @ A_27b @ A_27a @ V2i @ ( c_2Epath_2Etake @ A_27a @ A_27b @ V0n @ V1p ) )
        = ( c_2Epath_2Enth__label @ A_27b @ A_27a @ V2i @ V1p ) ) ) ).

thf(thm_2Epath_2Esingleton__seg,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0i: tyop_2Enum_2Enum,V1p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ V0i @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V1p ) )
     => ( ( c_2Epath_2Eseg @ A_27a @ A_27b @ V0i @ V0i @ V1p )
        = ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ ( c_2Epath_2Eel @ A_27a @ A_27b @ V0i @ V1p ) ) ) ) ).

thf(thm_2Epath_2Erecursive__seg,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0i: tyop_2Enum_2Enum,V1j: tyop_2Enum_2Enum,V2p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( ( c_2Eprim__rec_2E_3C @ V0i @ V1j )
        & ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ V1j @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V2p ) ) )
     => ( ( c_2Epath_2Eseg @ A_27a @ A_27b @ V0i @ V1j @ V2p )
        = ( c_2Epath_2Epcons @ A_27a @ A_27b @ ( c_2Epath_2Eel @ A_27a @ A_27b @ V0i @ V2p ) @ ( c_2Epath_2Enth__label @ A_27b @ A_27a @ V0i @ V2p ) @ ( c_2Epath_2Eseg @ A_27a @ A_27b @ ( c_2Earithmetic_2E_2B @ V0i @ ( c_2Earithmetic_2ENUMERAL @ ( c_2Earithmetic_2EBIT1 @ c_2Earithmetic_2EZERO ) ) ) @ V1j @ V2p ) ) ) ) ).

thf(thm_2Epath_2EPL__seg,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0i: tyop_2Enum_2Enum,V1j: tyop_2Enum_2Enum,V2p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( ( c_2Earithmetic_2E_3C_3D @ V0i @ V1j )
        & ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ V1j @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V2p ) ) )
     => ( ( c_2Epath_2EPL @ A_27a @ A_27b @ ( c_2Epath_2Eseg @ A_27a @ A_27b @ V0i @ V1j @ V2p ) )
        = ( c_2Epred__set_2EGSPEC @ tyop_2Enum_2Enum @ tyop_2Enum_2Enum
          @ ^ [V3n: tyop_2Enum_2Enum] : ( c_2Epair_2E_2C @ tyop_2Enum_2Enum @ $o @ V3n @ ( c_2Earithmetic_2E_3C_3D @ V3n @ ( c_2Earithmetic_2E_2D @ V1j @ V0i ) ) ) ) ) ) ).

thf(thm_2Epath_2Efinite__seg,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0p: tyop_2Epath_2Epath @ A_27a @ A_27b,V1i: tyop_2Enum_2Enum,V2j: tyop_2Enum_2Enum] :
      ( ( ( c_2Earithmetic_2E_3C_3D @ V1i @ V2j )
        & ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ V2j @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V0p ) ) )
     => ( c_2Epath_2Efinite @ A_27a @ A_27b @ ( c_2Epath_2Eseg @ A_27a @ A_27b @ V1i @ V2j @ V0p ) ) ) ).

thf(thm_2Epath_2Efirst__seg,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0i: tyop_2Enum_2Enum,V1j: tyop_2Enum_2Enum,V2p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( ( c_2Earithmetic_2E_3C_3D @ V0i @ V1j )
        & ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ V1j @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V2p ) ) )
     => ( ( c_2Epath_2Efirst @ A_27a @ A_27b @ ( c_2Epath_2Eseg @ A_27a @ A_27b @ V0i @ V1j @ V2p ) )
        = ( c_2Epath_2Eel @ A_27a @ A_27b @ V0i @ V2p ) ) ) ).

thf(thm_2Epath_2Elast__seg,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0i: tyop_2Enum_2Enum,V1j: tyop_2Enum_2Enum,V2p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( ( c_2Earithmetic_2E_3C_3D @ V0i @ V1j )
        & ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ V1j @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V2p ) ) )
     => ( ( c_2Epath_2Elast @ A_27a @ A_27b @ ( c_2Epath_2Eseg @ A_27a @ A_27b @ V0i @ V1j @ V2p ) )
        = ( c_2Epath_2Eel @ A_27a @ A_27b @ V1j @ V2p ) ) ) ).

thf(thm_2Epath_2EfirstP__at__unique,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0P: A_27a > $o,V1p: tyop_2Epath_2Epath @ A_27a @ A_27b,V2n: tyop_2Enum_2Enum] :
      ( ( c_2Epath_2EfirstP__at @ A_27a @ A_27b @ V0P @ V1p @ V2n )
     => ! [V3m: tyop_2Enum_2Enum] :
          ( ( c_2Epath_2EfirstP__at @ A_27a @ A_27b @ V0P @ V1p @ V3m )
        <=> ( V3m = V2n ) ) ) ).

thf(thm_2Epath_2Eis__stopped__thm,axiom,
    ! [A_27a: $tType,A_27b: $tType,A_27c: $tType,A_27d: $tType] :
      ( ! [V0x: A_27a] :
          ( ( c_2Epath_2Eis__stopped @ A_27a @ A_27b @ ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V0x ) )
          = c_2Ebool_2ET )
      & ! [V1x: A_27c,V2r: A_27d,V3p: tyop_2Epath_2Epath @ A_27c @ A_27d] :
          ( ( c_2Epath_2Eis__stopped @ A_27c @ A_27d @ ( c_2Epath_2Epcons @ A_27c @ A_27d @ V1x @ V2r @ V3p ) )
          = c_2Ebool_2EF ) ) ).

thf(thm_2Epath_2Efilter__every,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0P: A_27a > $o,V1p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Epath_2Eexists @ A_27a @ A_27b @ V0P @ V1p )
     => ( c_2Epath_2Eevery @ A_27a @ A_27b @ V0P @ ( c_2Epath_2Efilter @ A_27a @ A_27b @ V0P @ V1p ) ) ) ).

thf(thm_2Epath_2Epgenerate__infinite,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0f: tyop_2Enum_2Enum > A_27a,V1g: tyop_2Enum_2Enum > A_27b] : ( (~) @ ( c_2Epath_2Efinite @ A_27a @ A_27b @ ( c_2Epath_2Epgenerate @ A_27a @ A_27b @ V0f @ V1g ) ) ) ).

thf(thm_2Epath_2Epgenerate__not__stopped,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0f: tyop_2Enum_2Enum > A_27a,V1g: tyop_2Enum_2Enum > A_27b,V2x: A_27a] :
      ( (~)
      @ ( ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V2x )
        = ( c_2Epath_2Epgenerate @ A_27a @ A_27b @ V0f @ V1g ) ) ) ).

thf(thm_2Epath_2Eel__pgenerate,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0n: tyop_2Enum_2Enum,V1f: tyop_2Enum_2Enum > A_27a,V2g: tyop_2Enum_2Enum > A_27b] :
      ( ( c_2Epath_2Eel @ A_27a @ A_27b @ V0n @ ( c_2Epath_2Epgenerate @ A_27a @ A_27b @ V1f @ V2g ) )
      = ( V1f @ V0n ) ) ).

thf(thm_2Epath_2Enth__label__pgenerate,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0n: tyop_2Enum_2Enum,V1f: tyop_2Enum_2Enum > A_27a,V2g: tyop_2Enum_2Enum > A_27b] :
      ( ( c_2Epath_2Enth__label @ A_27b @ A_27a @ V0n @ ( c_2Epath_2Epgenerate @ A_27a @ A_27b @ V1f @ V2g ) )
      = ( V2g @ V0n ) ) ).

thf(thm_2Epath_2Epgenerate__11,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0f1: tyop_2Enum_2Enum > A_27a,V1g1: tyop_2Enum_2Enum > A_27b,V2f2: tyop_2Enum_2Enum > A_27a,V3g2: tyop_2Enum_2Enum > A_27b] :
      ( ( ( c_2Epath_2Epgenerate @ A_27a @ A_27b @ V0f1 @ V1g1 )
        = ( c_2Epath_2Epgenerate @ A_27a @ A_27b @ V2f2 @ V3g2 ) )
    <=> ( ( V0f1 = V2f2 )
        & ( V1g1 = V3g2 ) ) ) ).

thf(thm_2Epath_2Epgenerate__onto,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( (~) @ ( c_2Epath_2Efinite @ A_27a @ A_27b @ V0p ) )
     => ? [V1f: tyop_2Enum_2Enum > A_27a,V2g: tyop_2Enum_2Enum > A_27b] :
          ( V0p
          = ( c_2Epath_2Epgenerate @ A_27a @ A_27b @ V1f @ V2g ) ) ) ).

thf(thm_2Epath_2Eokpath__monotone,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0R: A_27a > A_27b > A_27a > $o] : ( c_2EfixedPoint_2Emonotone @ ( tyop_2Epath_2Epath @ A_27a @ A_27b ) @ ( tyop_2Epath_2Epath @ A_27a @ A_27b ) @ ( c_2Epath_2Eokpath__f @ A_27a @ A_27b @ V0R ) ) ).

thf(thm_2Epath_2Eokpath__co__ind,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0R: A_27a > A_27b > A_27a > $o,V1P: ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > $o] :
      ( ! [V2x: A_27a,V3r: A_27b,V4p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( V1P @ ( c_2Epath_2Epcons @ A_27a @ A_27b @ V2x @ V3r @ V4p ) )
         => ( ( V0R @ V2x @ V3r @ ( c_2Epath_2Efirst @ A_27a @ A_27b @ V4p ) )
            & ( V1P @ V4p ) ) )
     => ! [V5p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( V1P @ V5p )
         => ( c_2Epath_2Eokpath @ A_27a @ A_27b @ V0R @ V5p ) ) ) ).

thf(thm_2Epath_2Eokpath__cases,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0R: A_27a > A_27b > A_27a > $o,V1x: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Epath_2Eokpath @ A_27a @ A_27b @ V0R @ V1x )
    <=> ( ? [V2x_27: A_27a] :
            ( V1x
            = ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V2x_27 ) )
        | ? [V3x_27: A_27a,V4r: A_27b,V5p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
            ( ( V1x
              = ( c_2Epath_2Epcons @ A_27a @ A_27b @ V3x_27 @ V4r @ V5p ) )
            & ( V0R @ V3x_27 @ V4r @ ( c_2Epath_2Efirst @ A_27a @ A_27b @ V5p ) )
            & ( c_2Epath_2Eokpath @ A_27a @ A_27b @ V0R @ V5p ) ) ) ) ).

thf(thm_2Epath_2Eokpath__thm,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0R: A_27a > A_27b > A_27a > $o] :
      ( ! [V1x: A_27a] : ( c_2Epath_2Eokpath @ A_27a @ A_27b @ V0R @ ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V1x ) )
      & ! [V2x: A_27a,V3r: A_27b,V4p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( c_2Epath_2Eokpath @ A_27a @ A_27b @ V0R @ ( c_2Epath_2Epcons @ A_27a @ A_27b @ V2x @ V3r @ V4p ) )
        <=> ( ( V0R @ V2x @ V3r @ ( c_2Epath_2Efirst @ A_27a @ A_27b @ V4p ) )
            & ( c_2Epath_2Eokpath @ A_27a @ A_27b @ V0R @ V4p ) ) ) ) ).

thf(thm_2Epath_2Efinite__okpath__ind,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0P: ( tyop_2Epath_2Epath @ A_27a @ A_27b ) > $o,V1R: A_27a > A_27b > A_27a > $o] :
      ( ( ! [V2x: A_27a] : ( V0P @ ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V2x ) )
        & ! [V3x: A_27a,V4r: A_27b,V5p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
            ( ( ( c_2Epath_2Eokpath @ A_27a @ A_27b @ V1R @ V5p )
              & ( c_2Epath_2Efinite @ A_27a @ A_27b @ V5p )
              & ( V1R @ V3x @ V4r @ ( c_2Epath_2Efirst @ A_27a @ A_27b @ V5p ) )
              & ( V0P @ V5p ) )
           => ( V0P @ ( c_2Epath_2Epcons @ A_27a @ A_27b @ V3x @ V4r @ V5p ) ) ) )
     => ! [V6sigma: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( ( c_2Epath_2Eokpath @ A_27a @ A_27b @ V1R @ V6sigma )
            & ( c_2Epath_2Efinite @ A_27a @ A_27b @ V6sigma ) )
         => ( V0P @ V6sigma ) ) ) ).

thf(thm_2Epath_2Eokpath__pmap,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0R: A_27a > A_27b > A_27a > $o,V1f: A_27a > A_27a,V2g: A_27b > A_27b,V3p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( ( c_2Epath_2Eokpath @ A_27a @ A_27b @ V0R @ V3p )
        & ! [V4x: A_27a,V5r: A_27b,V6y: A_27a] :
            ( ( V0R @ V4x @ V5r @ V6y )
           => ( V0R @ ( V1f @ V4x ) @ ( V2g @ V5r ) @ ( V1f @ V6y ) ) ) )
     => ( c_2Epath_2Eokpath @ A_27a @ A_27b @ V0R @ ( c_2Epath_2Epmap @ A_27a @ A_27b @ A_27a @ A_27b @ V1f @ V2g @ V3p ) ) ) ).

thf(thm_2Epath_2Efinite__plink,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0p1: tyop_2Epath_2Epath @ A_27a @ A_27b,V1p2: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Epath_2Efinite @ A_27a @ A_27b @ ( c_2Epath_2Eplink @ A_27a @ A_27b @ V0p1 @ V1p2 ) )
    <=> ( ( c_2Epath_2Efinite @ A_27a @ A_27b @ V0p1 )
        & ( c_2Epath_2Efinite @ A_27a @ A_27b @ V1p2 ) ) ) ).

thf(thm_2Epath_2Efirst__plink,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0p1: tyop_2Epath_2Epath @ A_27a @ A_27b,V1p2: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( ( c_2Epath_2Elast @ A_27a @ A_27b @ V0p1 )
        = ( c_2Epath_2Efirst @ A_27a @ A_27b @ V1p2 ) )
     => ( ( c_2Epath_2Efirst @ A_27a @ A_27b @ ( c_2Epath_2Eplink @ A_27a @ A_27b @ V0p1 @ V1p2 ) )
        = ( c_2Epath_2Efirst @ A_27a @ A_27b @ V0p1 ) ) ) ).

thf(thm_2Epath_2Elast__plink,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0p1: tyop_2Epath_2Epath @ A_27a @ A_27b,V1p2: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( ( c_2Epath_2Efinite @ A_27a @ A_27b @ V0p1 )
        & ( c_2Epath_2Efinite @ A_27a @ A_27b @ V1p2 )
        & ( ( c_2Epath_2Elast @ A_27a @ A_27b @ V0p1 )
          = ( c_2Epath_2Efirst @ A_27a @ A_27b @ V1p2 ) ) )
     => ( ( c_2Epath_2Elast @ A_27a @ A_27b @ ( c_2Epath_2Eplink @ A_27a @ A_27b @ V0p1 @ V1p2 ) )
        = ( c_2Epath_2Elast @ A_27a @ A_27b @ V1p2 ) ) ) ).

thf(thm_2Epath_2Eokpath__plink,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0R: A_27a > A_27b > A_27a > $o,V1p1: tyop_2Epath_2Epath @ A_27a @ A_27b,V2p2: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( ( c_2Epath_2Efinite @ A_27a @ A_27b @ V1p1 )
        & ( ( c_2Epath_2Elast @ A_27a @ A_27b @ V1p1 )
          = ( c_2Epath_2Efirst @ A_27a @ A_27b @ V2p2 ) ) )
     => ( ( c_2Epath_2Eokpath @ A_27a @ A_27b @ V0R @ ( c_2Epath_2Eplink @ A_27a @ A_27b @ V1p1 @ V2p2 ) )
      <=> ( ( c_2Epath_2Eokpath @ A_27a @ A_27b @ V0R @ V1p1 )
          & ( c_2Epath_2Eokpath @ A_27a @ A_27b @ V0R @ V2p2 ) ) ) ) ).

thf(thm_2Epath_2Eokpath__take,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0R: A_27a > A_27b > A_27a > $o,V1p: tyop_2Epath_2Epath @ A_27a @ A_27b,V2i: tyop_2Enum_2Enum] :
      ( ( ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ V2i @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V1p ) )
        & ( c_2Epath_2Eokpath @ A_27a @ A_27b @ V0R @ V1p ) )
     => ( c_2Epath_2Eokpath @ A_27a @ A_27b @ V0R @ ( c_2Epath_2Etake @ A_27a @ A_27b @ V2i @ V1p ) ) ) ).

thf(thm_2Epath_2Eokpath__drop,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0R: A_27a > A_27b > A_27a > $o,V1p: tyop_2Epath_2Epath @ A_27a @ A_27b,V2i: tyop_2Enum_2Enum] :
      ( ( ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ V2i @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V1p ) )
        & ( c_2Epath_2Eokpath @ A_27a @ A_27b @ V0R @ V1p ) )
     => ( c_2Epath_2Eokpath @ A_27a @ A_27b @ V0R @ ( c_2Epath_2Edrop @ A_27a @ A_27b @ V2i @ V1p ) ) ) ).

thf(thm_2Epath_2Eokpath__seg,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0R: A_27a > A_27b > A_27a > $o,V1p: tyop_2Epath_2Epath @ A_27a @ A_27b,V2i: tyop_2Enum_2Enum,V3j: tyop_2Enum_2Enum] :
      ( ( ( c_2Earithmetic_2E_3C_3D @ V2i @ V3j )
        & ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ V3j @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V1p ) )
        & ( c_2Epath_2Eokpath @ A_27a @ A_27b @ V0R @ V1p ) )
     => ( c_2Epath_2Eokpath @ A_27a @ A_27b @ V0R @ ( c_2Epath_2Eseg @ A_27a @ A_27b @ V2i @ V3j @ V1p ) ) ) ).

thf(thm_2Epath_2ESN__finite__paths,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0R: A_27a > A_27b > A_27a > $o,V1p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( ( c_2Epath_2ESN @ A_27a @ A_27b @ V0R )
        & ( c_2Epath_2Eokpath @ A_27a @ A_27b @ V0R @ V1p ) )
     => ( c_2Epath_2Efinite @ A_27a @ A_27b @ V1p ) ) ).

thf(thm_2Epath_2Efinite__paths__SN,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0R: A_27a > A_27b > A_27a > $o] :
      ( ! [V1p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( c_2Epath_2Eokpath @ A_27a @ A_27b @ V0R @ V1p )
         => ( c_2Epath_2Efinite @ A_27a @ A_27b @ V1p ) )
     => ( c_2Epath_2ESN @ A_27a @ A_27b @ V0R ) ) ).

thf(thm_2Epath_2ESN__finite__paths__EQ,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0R: A_27a > A_27b > A_27a > $o] :
      ( ( c_2Epath_2ESN @ A_27a @ A_27b @ V0R )
    <=> ! [V1p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
          ( ( c_2Epath_2Eokpath @ A_27a @ A_27b @ V0R @ V1p )
         => ( c_2Epath_2Efinite @ A_27a @ A_27b @ V1p ) ) ) ).

thf(thm_2Epath_2Elabels__LMAP,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Epath_2Elabels @ A_27a @ A_27b @ V0p )
      = ( c_2Ellist_2ELMAP @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) @ A_27b @ ( c_2Epair_2EFST @ A_27b @ A_27a ) @ ( c_2Epair_2ESND @ A_27a @ ( tyop_2Ellist_2Ellist @ ( tyop_2Epair_2Eprod @ A_27b @ A_27a ) ) @ ( c_2Epath_2EfromPath @ A_27a @ A_27b @ V0p ) ) ) ) ).

thf(thm_2Epath_2Elabels__plink,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0p1: tyop_2Epath_2Epath @ A_27a @ A_27b,V1p2: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Epath_2Elabels @ A_27a @ A_27b @ ( c_2Epath_2Eplink @ A_27a @ A_27b @ V0p1 @ V1p2 ) )
      = ( c_2Ellist_2ELAPPEND @ A_27b @ ( c_2Epath_2Elabels @ A_27a @ A_27b @ V0p1 ) @ ( c_2Epath_2Elabels @ A_27a @ A_27b @ V1p2 ) ) ) ).

thf(thm_2Epath_2Efinite__labels,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Ellist_2ELFINITE @ A_27b @ ( c_2Epath_2Elabels @ A_27a @ A_27b @ V0p ) )
      = ( c_2Epath_2Efinite @ A_27a @ A_27b @ V0p ) ) ).

thf(thm_2Epath_2Eunfold__thm,axiom,
    ! [A_27a: $tType,A_27b: $tType,A_27c: $tType,V0proj: A_27a > A_27b,V1f: A_27a > ( tyop_2Eoption_2Eoption @ ( tyop_2Epair_2Eprod @ A_27a @ A_27c ) ),V2s: A_27a] :
      ( ( c_2Epath_2Eunfold @ A_27b @ A_27c @ A_27a @ V0proj @ V1f @ V2s )
      = ( c_2Eoption_2Eoption__CASE @ ( tyop_2Epair_2Eprod @ A_27a @ A_27c ) @ ( tyop_2Epath_2Epath @ A_27b @ A_27c ) @ ( V1f @ V2s ) @ ( c_2Epath_2Estopped__at @ A_27b @ A_27c @ ( V0proj @ V2s ) )
        @ ^ [V3v: tyop_2Epair_2Eprod @ A_27a @ A_27c] :
            ( c_2Epair_2Epair__CASE @ ( tyop_2Epath_2Epath @ A_27b @ A_27c ) @ A_27a @ A_27c @ V3v
            @ ^ [V4s_27: A_27a,V5l: A_27c] : ( c_2Epath_2Epcons @ A_27b @ A_27c @ ( V0proj @ V2s ) @ V5l @ ( c_2Epath_2Eunfold @ A_27b @ A_27c @ A_27a @ V0proj @ V1f @ V4s_27 ) ) ) ) ) ).

thf(thm_2Epath_2Eunfold__thm2,axiom,
    ! [A_27a: $tType,A_27b: $tType,A_27c: $tType,V0proj: A_27a > A_27b,V1f: A_27a > ( tyop_2Eoption_2Eoption @ ( tyop_2Epair_2Eprod @ A_27a @ A_27c ) ),V2x: A_27a,V3v1: A_27a,V4v2: A_27c] :
      ( ( ( ( V1f @ V2x )
          = ( c_2Eoption_2ENONE @ ( tyop_2Epair_2Eprod @ A_27a @ A_27c ) ) )
       => ( ( c_2Epath_2Eunfold @ A_27b @ A_27c @ A_27a @ V0proj @ V1f @ V2x )
          = ( c_2Epath_2Estopped__at @ A_27b @ A_27c @ ( V0proj @ V2x ) ) ) )
      & ( ( ( V1f @ V2x )
          = ( c_2Eoption_2ESOME @ ( tyop_2Epair_2Eprod @ A_27a @ A_27c ) @ ( c_2Epair_2E_2C @ A_27a @ A_27c @ V3v1 @ V4v2 ) ) )
       => ( ( c_2Epath_2Eunfold @ A_27b @ A_27c @ A_27a @ V0proj @ V1f @ V2x )
          = ( c_2Epath_2Epcons @ A_27b @ A_27c @ ( V0proj @ V2x ) @ V4v2 @ ( c_2Epath_2Eunfold @ A_27b @ A_27c @ A_27a @ V0proj @ V1f @ V3v1 ) ) ) ) ) ).

thf(thm_2Epath_2Elabels__unfold,axiom,
    ! [A_27a: $tType,A_27b: $tType,A_27c: $tType,V0proj: A_27a > A_27b,V1f: A_27a > ( tyop_2Eoption_2Eoption @ ( tyop_2Epair_2Eprod @ A_27a @ A_27c ) ),V2s: A_27a] :
      ( ( c_2Epath_2Elabels @ A_27b @ A_27c @ ( c_2Epath_2Eunfold @ A_27b @ A_27c @ A_27a @ V0proj @ V1f @ V2s ) )
      = ( c_2Ellist_2ELUNFOLD @ A_27c @ A_27a @ V1f @ V2s ) ) ).

thf(thm_2Epath_2Eokpath__unfold,axiom,
    ! [A_27a: $tType,A_27b: $tType,A_27c: $tType,V0P: A_27a > $o,V1m: A_27b > A_27c > A_27b > $o,V2proj: A_27a > A_27b,V3f: A_27a > ( tyop_2Eoption_2Eoption @ ( tyop_2Epair_2Eprod @ A_27a @ A_27c ) ),V4s: A_27a] :
      ( ( ( V0P @ V4s )
        & ! [V5s: A_27a,V6s_27: A_27a,V7l: A_27c] :
            ( ( ( V0P @ V5s )
              & ( ( V3f @ V5s )
                = ( c_2Eoption_2ESOME @ ( tyop_2Epair_2Eprod @ A_27a @ A_27c ) @ ( c_2Epair_2E_2C @ A_27a @ A_27c @ V6s_27 @ V7l ) ) ) )
           => ( V0P @ V6s_27 ) )
        & ! [V8s: A_27a,V9s_27: A_27a,V10l: A_27c] :
            ( ( ( V0P @ V8s )
              & ( ( V3f @ V8s )
                = ( c_2Eoption_2ESOME @ ( tyop_2Epair_2Eprod @ A_27a @ A_27c ) @ ( c_2Epair_2E_2C @ A_27a @ A_27c @ V9s_27 @ V10l ) ) ) )
           => ( V1m @ ( V2proj @ V8s ) @ V10l @ ( V2proj @ V9s_27 ) ) ) )
     => ( c_2Epath_2Eokpath @ A_27b @ A_27c @ V1m @ ( c_2Epath_2Eunfold @ A_27b @ A_27c @ A_27a @ V2proj @ V3f @ V4s ) ) ) ).

thf(thm_2Epath_2Etrace__machine__thm,axiom,
    ! [A_27a: $tType,V0P: ( tyop_2Elist_2Elist @ A_27a ) > $o,V1tr: tyop_2Ellist_2Ellist @ A_27a] :
      ( ! [V2n: tyop_2Enum_2Enum,V3l: tyop_2Elist_2Elist @ A_27a] :
          ( ( ( c_2Ellist_2ELTAKE @ A_27a @ V2n @ V1tr )
            = ( c_2Eoption_2ESOME @ ( tyop_2Elist_2Elist @ A_27a ) @ V3l ) )
         => ( V0P @ V3l ) )
     => ? [V4p: tyop_2Epath_2Epath @ ( tyop_2Elist_2Elist @ A_27a ) @ A_27a] :
          ( ( V1tr
            = ( c_2Epath_2Elabels @ ( tyop_2Elist_2Elist @ A_27a ) @ A_27a @ V4p ) )
          & ( c_2Epath_2Eokpath @ ( tyop_2Elist_2Elist @ A_27a ) @ A_27a @ ( c_2Epath_2Etrace__machine @ A_27a @ V0P ) @ V4p )
          & ( ( c_2Epath_2Efirst @ ( tyop_2Elist_2Elist @ A_27a ) @ A_27a @ V4p )
            = ( c_2Elist_2ENIL @ A_27a ) ) ) ) ).

thf(thm_2Epath_2Etrace__machine__thm2,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0n: tyop_2Enum_2Enum,V1l: tyop_2Elist_2Elist @ A_27a,V2P: ( tyop_2Elist_2Elist @ A_27a ) > $o,V3p: tyop_2Epath_2Epath @ ( tyop_2Elist_2Elist @ A_27a ) @ A_27a,V4init: A_27b] :
      ( ( ( c_2Epath_2Eokpath @ ( tyop_2Elist_2Elist @ A_27a ) @ A_27a @ ( c_2Epath_2Etrace__machine @ A_27a @ V2P ) @ V3p )
        & ( V2P @ ( c_2Epath_2Efirst @ ( tyop_2Elist_2Elist @ A_27a ) @ A_27a @ V3p ) ) )
     => ( ( ( c_2Ellist_2ELTAKE @ A_27a @ V0n @ ( c_2Epath_2Elabels @ ( tyop_2Elist_2Elist @ A_27a ) @ A_27a @ V3p ) )
          = ( c_2Eoption_2ESOME @ ( tyop_2Elist_2Elist @ A_27a ) @ V1l ) )
       => ( V2P @ ( c_2Elist_2EAPPEND @ A_27a @ ( c_2Epath_2Efirst @ ( tyop_2Elist_2Elist @ A_27a ) @ A_27a @ V3p ) @ V1l ) ) ) ) ).

thf(thm_2Epath_2ELTAKE__labels,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0n: tyop_2Enum_2Enum,V1p: tyop_2Epath_2Epath @ A_27a @ A_27b,V2l: tyop_2Elist_2Elist @ A_27b] :
      ( ( ( c_2Ellist_2ELTAKE @ A_27b @ V0n @ ( c_2Epath_2Elabels @ A_27a @ A_27b @ V1p ) )
        = ( c_2Eoption_2ESOME @ ( tyop_2Elist_2Elist @ A_27b ) @ V2l ) )
    <=> ( ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ V0n @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V1p ) )
        & ( ( c_2Ellist_2EtoList @ A_27b @ ( c_2Epath_2Elabels @ A_27a @ A_27b @ ( c_2Epath_2Etake @ A_27a @ A_27b @ V0n @ V1p ) ) )
          = ( c_2Eoption_2ESOME @ ( tyop_2Elist_2Elist @ A_27b ) @ V2l ) ) ) ) ).

thf(thm_2Epath_2Edrop__eq__pcons,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0n: tyop_2Enum_2Enum,V1p: tyop_2Epath_2Epath @ A_27a @ A_27b,V2h: A_27a,V3l: A_27b,V4t: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ V0n @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V1p ) )
        & ( ( c_2Epath_2Edrop @ A_27a @ A_27b @ V0n @ V1p )
          = ( c_2Epath_2Epcons @ A_27a @ A_27b @ V2h @ V3l @ V4t ) ) )
     => ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ ( c_2Earithmetic_2E_2B @ V0n @ ( c_2Earithmetic_2ENUMERAL @ ( c_2Earithmetic_2EBIT1 @ c_2Earithmetic_2EZERO ) ) ) @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V1p ) ) ) ).

thf(thm_2Epath_2Eokpath__parallel__comp,axiom,
    ! [A_27a: $tType,A_27b: $tType,A_27c: $tType,V0p: tyop_2Epath_2Epath @ ( tyop_2Epair_2Eprod @ A_27a @ A_27b ) @ A_27c,V1m1: A_27a > A_27c > A_27a > $o,V2m2: A_27b > A_27c > A_27b > $o] :
      ( ( c_2Epath_2Eokpath @ ( tyop_2Epair_2Eprod @ A_27a @ A_27b ) @ A_27c @ ( c_2Epath_2Eparallel__comp @ A_27a @ A_27c @ A_27a @ A_27b @ A_27b @ V1m1 @ V2m2 ) @ V0p )
    <=> ( ( c_2Epath_2Eokpath @ A_27a @ A_27c @ V1m1
          @ ( c_2Epath_2Epmap @ ( tyop_2Epair_2Eprod @ A_27a @ A_27b ) @ A_27c @ A_27a @ A_27c @ ( c_2Epair_2EFST @ A_27a @ A_27b )
            @ ^ [V3x: A_27c] : V3x
            @ V0p ) )
        & ( c_2Epath_2Eokpath @ A_27b @ A_27c @ V2m2
          @ ( c_2Epath_2Epmap @ ( tyop_2Epair_2Eprod @ A_27a @ A_27b ) @ A_27c @ A_27b @ A_27c @ ( c_2Epair_2ESND @ A_27a @ A_27b )
            @ ^ [V4x: A_27c] : V4x
            @ V0p ) ) ) ) ).

thf(thm_2Epath_2Ebuild__pcomp__trace,axiom,
    ! [A_27a: $tType,A_27b: $tType,A_27c: $tType,V0m1: A_27a > A_27b > A_27a > $o,V1p1: tyop_2Epath_2Epath @ A_27a @ A_27b,V2m2: A_27c > A_27b > A_27c > $o,V3p2: tyop_2Epath_2Epath @ A_27c @ A_27b] :
      ( ( ( c_2Epath_2Eokpath @ A_27a @ A_27b @ V0m1 @ V1p1 )
        & ( c_2Epath_2Eokpath @ A_27c @ A_27b @ V2m2 @ V3p2 )
        & ( ( c_2Epath_2Elabels @ A_27a @ A_27b @ V1p1 )
          = ( c_2Epath_2Elabels @ A_27c @ A_27b @ V3p2 ) ) )
     => ? [V4p: tyop_2Epath_2Epath @ ( tyop_2Epair_2Eprod @ A_27a @ A_27c ) @ A_27b] :
          ( ( c_2Epath_2Eokpath @ ( tyop_2Epair_2Eprod @ A_27a @ A_27c ) @ A_27b @ ( c_2Epath_2Eparallel__comp @ A_27a @ A_27b @ A_27a @ A_27c @ A_27c @ V0m1 @ V2m2 ) @ V4p )
          & ( ( c_2Epath_2Elabels @ ( tyop_2Epair_2Eprod @ A_27a @ A_27c ) @ A_27b @ V4p )
            = ( c_2Epath_2Elabels @ A_27a @ A_27b @ V1p1 ) )
          & ( ( c_2Epath_2Efirst @ ( tyop_2Epair_2Eprod @ A_27a @ A_27c ) @ A_27b @ V4p )
            = ( c_2Epair_2E_2C @ A_27a @ A_27c @ ( c_2Epath_2Efirst @ A_27a @ A_27b @ V1p1 ) @ ( c_2Epath_2Efirst @ A_27c @ A_27b @ V3p2 ) ) ) ) ) ).

thf(thm_2Epath_2Enth__label__LNTH,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0n: tyop_2Enum_2Enum,V1p: tyop_2Epath_2Epath @ A_27a @ A_27b,V2x: A_27b] :
      ( ( ( c_2Ellist_2ELNTH @ A_27b @ V0n @ ( c_2Epath_2Elabels @ A_27a @ A_27b @ V1p ) )
        = ( c_2Eoption_2ESOME @ A_27b @ V2x ) )
    <=> ( ( c_2Ebool_2EIN @ tyop_2Enum_2Enum @ ( c_2Earithmetic_2E_2B @ V0n @ ( c_2Earithmetic_2ENUMERAL @ ( c_2Earithmetic_2EBIT1 @ c_2Earithmetic_2EZERO ) ) ) @ ( c_2Epath_2EPL @ A_27a @ A_27b @ V1p ) )
        & ( ( c_2Epath_2Enth__label @ A_27b @ A_27a @ V0n @ V1p )
          = V2x ) ) ) ).

thf(thm_2Epath_2Enth__label__LTAKE,axiom,
    ! [A_27a: $tType,A_27b: $tType,A_27c: $tType,V0n: tyop_2Enum_2Enum,V1p: tyop_2Epath_2Epath @ A_27a @ A_27b,V2l: tyop_2Elist_2Elist @ A_27b,V3i: tyop_2Enum_2Enum,V4v: A_27c] :
      ( ( ( ( c_2Ellist_2ELTAKE @ A_27b @ V0n @ ( c_2Epath_2Elabels @ A_27a @ A_27b @ V1p ) )
          = ( c_2Eoption_2ESOME @ ( tyop_2Elist_2Elist @ A_27b ) @ V2l ) )
        & ( c_2Eprim__rec_2E_3C @ V3i @ ( c_2Elist_2ELENGTH @ A_27b @ V2l ) ) )
     => ( ( c_2Epath_2Enth__label @ A_27b @ A_27a @ V3i @ V1p )
        = ( c_2Elist_2EEL @ A_27b @ V3i @ V2l ) ) ) ).

thf(thm_2Epath_2Efinite__path__end__cases,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0p: tyop_2Epath_2Epath @ A_27a @ A_27b] :
      ( ( c_2Epath_2Efinite @ A_27a @ A_27b @ V0p )
     => ( ? [V1x: A_27a] :
            ( V0p
            = ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V1x ) )
        | ? [V2p_27: tyop_2Epath_2Epath @ A_27a @ A_27b,V3l: A_27b,V4s: A_27a] :
            ( V0p
            = ( c_2Epath_2Eplink @ A_27a @ A_27b @ V2p_27 @ ( c_2Epath_2Epcons @ A_27a @ A_27b @ ( c_2Epath_2Elast @ A_27a @ A_27b @ V2p_27 ) @ V3l @ ( c_2Epath_2Estopped__at @ A_27a @ A_27b @ V4s ) ) ) ) ) ) ).

thf(thm_2Epath_2Esimulation__trace__inclusion,axiom,
    ! [A_27a: $tType,A_27b: $tType,A_27c: $tType,V0R: A_27a > A_27b > $o,V1M1: A_27a > A_27c > A_27a > $o,V2M2: A_27b > A_27c > A_27b > $o,V3p: tyop_2Epath_2Epath @ A_27a @ A_27c,V4t__init: A_27b] :
      ( ( ! [V5s1: A_27a,V6l: A_27c,V7s2: A_27a,V8t1: A_27b] :
            ( ( ( V0R @ V5s1 @ V8t1 )
              & ( V1M1 @ V5s1 @ V6l @ V7s2 ) )
           => ? [V9t2: A_27b] :
                ( ( V0R @ V7s2 @ V9t2 )
                & ( V2M2 @ V8t1 @ V6l @ V9t2 ) ) )
        & ( c_2Epath_2Eokpath @ A_27a @ A_27c @ V1M1 @ V3p )
        & ( V0R @ ( c_2Epath_2Efirst @ A_27a @ A_27c @ V3p ) @ V4t__init ) )
     => ? [V10q: tyop_2Epath_2Epath @ A_27b @ A_27c] :
          ( ( c_2Epath_2Eokpath @ A_27b @ A_27c @ V2M2 @ V10q )
          & ( ( c_2Epath_2Elabels @ A_27a @ A_27c @ V3p )
            = ( c_2Epath_2Elabels @ A_27b @ A_27c @ V10q ) )
          & ( ( c_2Epath_2Efirst @ A_27b @ A_27c @ V10q )
            = V4t__init ) ) ) ).

%------------------------------------------------------------------------------